Fragment與Activity通訊
動態載入的Fragment
Activity => Fragment
例項化 bundle類 傳遞給 Fragment
//動態載入 fragment
Fragment fragment = new Fragment(); //這個是我們自己定義的 Fragment
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
//例項化bundle類
Bundle bundle = new Bundle();
bundle.putString("title","學習雷鋒好榜樣");
//傳遞資料
fragment.setArguments(bundle);
fragmentTransaction.addToBackStack(null); //後退按鍵 允許
fragmentTransaction.add(R.id.linear,fragment);
fragmentTransaction.commit();
Fragment =>Activity
實質就是呼叫Activity中的方法
Fragment.java
public interface MyListener{
public void sayHello(String str);
}
@Override
public void onAttach(Activity activity) {
MyListener listener = (MyListener)getActivity();
listener.sayHello("Fragment 傳遞給 Activity 的資料!");
super.onAttach(activity);
}
MainActivity.java
public class MainActivity extends ActionBarActivity implements Fragment.MyListener
...
...
@Override
public void sayHello(String str) {
Toast.makeText(MainActivity.this,str,Toast.LENGTH_LONG).show();
}
靜態載入的Fragment
Activity => Fragment
實質就是呼叫Fragment類中的方法
public class Fragment extends android.app.Fragment {
private String str;
public void setStr(String str) {
this.str = str;
}
public String getStr() {
return str;
}
MainActivity.java
FragmentManager fragmentManager = getFragmentManager();
android.app.Fragment fragmentById = fragmentManager.findFragmentById(R.id.fragment);
Fragment fragment = (Fragment)fragmentById;
fragment.setStr("123");
注意:Fragment 的 onCreateView的時候,Activity中的 setStr沒有執行
所以是無法在接收到的
“
Fragment =>Activity (和動態載入一致)
相關文章
- Activity 與 Fragment 通訊(99%)完美解決方案Fragment
- activity_main與fragment_mainAIFragment
- 在同一個Activity下實現兩個Fragment之間的通訊Fragment
- 安卓開發之Fragment的使用與通訊安卓Fragment
- Activity、Fragment和IntentFragmentIntent
- android Fragments詳解五:與activity通訊AndroidFragment
- Activity與Service通訊的方式有三種:
- Android入門教程 | Fragment (載入方法與通訊)AndroidFragment
- Fragment傳值到ActivityFragment
- 監聽activity、fragment生命Fragment
- 3-AVI–Activity與Fragment的資料傳遞Fragment
- Android知識點複習1(Activity與Fragment)AndroidFragment
- Activity之間的通訊方式
- Android--單Activity+多Fragment,玩轉FragmentAndroidFragment
- Activity跳到指定的Fragment的方法Fragment
- 專案重構之多Activity多FragmentFragment
- Fragment Transactions和Activity狀態丟失Fragment
- activity和fragment中startactivityforresult方法的區別Fragment
- 四大元件之Activity_Fragment元件Fragment
- Android開發中巧用Activity和FragmentAndroidFragment
- Android讓Fragment載入到Activity中AndroidFragment
- Android中Service的啟動方式及Activity與Service的通訊方式Android
- android Fragment與Activity互動,互相發資料(附圖詳解)AndroidFragment
- Android 活動(activity)和服務(service)進行通訊Android
- Activity和Service跨程式通訊的兩種方式
- Flutter Android 端 Activity/Fragment 流程原始碼分析FlutterAndroidFragment原始碼
- fragment返回鍵關閉fragment以及最後一個fragment的時候關閉activity的簡便方法Fragment
- 一切皆物件,介面也能再抽象(Fragment通訊)物件抽象Fragment
- [譯]Android Activity 和 Fragment 狀態儲存與恢復的最佳實踐AndroidFragment
- Android技術棧(一)從Activity遷移到FragmentAndroidFragment
- [Android]Fragment、Activity比較——Android碎片介紹AndroidFragment
- Binder通訊機制與IPC通訊.md
- Android | Activity和Fragment最全生命週期+發現大牛AndroidFragment
- 序列通訊與並行通訊的區別並行
- 將一個Activity中的資料傳到另一個Activity的Fragment中的方法Fragment
- 通過 URL 開啟 Activity
- C/S通訊模型與B/S通訊模型介紹模型
- Flutter與原生通訊 - Flutter PluginFlutterPlugin