向Fragment傳遞資料

2021-07-03 12:31:07 字數 1012 閱讀 9314

fragment由activity託管,當啟動這個activity並且想顯示fragment時,幾乎都需要向fragment傳遞乙個或幾個資料,而fragment則根據傳遞過來的這幾個引數顯示不同的畫面。下面就是介紹如何向fragment傳遞資料。

當不需要傳遞資料時

activity類裡

fragmentmanager fm=getsupportfragmentmanager();

android.support

.fragment sfragment=fm.findfragmentbyid(r.id

.fragmentcontainer);

if(sfragment==null)

當需要傳遞資料時,比如傳遞字串「text」給fragment

在fragment的類裡給fragment類建立生成例項的方法,在方法裡新增資料

public

static sfragment newinstance(string text)

在activity類裡通過上面的方法生成例項

fragmentmanager fm=getsupportfragmentmanager();

android.support

.fragment sfragment=fm.findfragmentbyid(r.id

.fragmentcontainer);

if(sfragment==null)

就這樣,fragment已經獲得了傳遞過來的資料text.

如果你看懂了上面的**,你一定會說,根本就沒傳過來,這樣怎麼根據傳過來的資料顯示不同的畫面。沒錯,雖然這時候fragment已經有了text這個資料,可是你還得讓這個text顯示出來才能發揮作用。

讓這個text顯示出來

text=getarguments().getstring("categoryname");

Activity向Fragment傳遞資料

我自己自定義乙個類,有很多成員變數,如何通過activity傳遞到fragment.我知道有種方法傳遞,但是是傳遞字串的,如果我要傳遞個複雜的資料型別,該用哪個方法,求具體點的操作 bundle bundle2 new bundle bundle2.putstring id activity傳送給m...

Fragment的資料傳遞

bundle傳遞引數 fragment1 fragment1 new fragment1 bundle bundle new bundle bundle.putstring name 張三 fragment1.setarguments bundle fragmentmanager fm getfra...

Fragment之間的資料傳遞

之前在寫 的時候也遇到了一些需求 乙個fragment獲取另乙個fragment裡邊的資料 去網上也看到不少有關這類題目的,我自己也寫了乙個小demo,那麼為了加深印象總結到csdn方便以後翻閱。進去正題 在fragment中做3件事情 第一步 獲取乙個fragmentmanager類管理器 fra...