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和IntentFragmentIntent
- Fragment傳值到ActivityFragment
- Android--單Activity+多Fragment,玩轉FragmentAndroidFragment
- Android入門教程 | Fragment (載入方法與通訊)AndroidFragment
- 3-AVI–Activity與Fragment的資料傳遞Fragment
- Activity和Fragment有什麼區別Fragment
- Activity和fragment是如何互動的Fragment
- Flutter Android 端 Activity/Fragment 流程原始碼分析FlutterAndroidFragment原始碼
- activity和fragment中startactivityforresult方法的區別Fragment
- Android技術棧(一)從Activity遷移到FragmentAndroidFragment
- fragment返回鍵關閉fragment以及最後一個fragment的時候關閉activity的簡便方法Fragment
- Android | Activity和Fragment最全生命週期+發現大牛AndroidFragment
- 將一個Activity中的資料傳到另一個Activity的Fragment中的方法Fragment
- 通過 URL 開啟 Activity
- Binder通訊機制與IPC通訊.md
- 序列通訊與並行通訊的區別並行
- Activity建立與跳轉
- flutter 與native通訊初探Flutter
- 【rosbridge】ROS與Android通訊ROSAndroid
- [譯] 通過測試來解耦 Activity解耦
- setContentView與Activity初始佈局View
- Flutter與原生通訊 - Flutter PluginFlutterPlugin
- RN 與原生通訊(Android篇)Android
- FragmentFragment
- 工作筆記——CPLD與MCU通過SPI通訊筆記
- 串列埠通訊與其他通訊方式相比有什麼優勢?串列埠
- 樂訊通雲通訊:物聯卡與加油站結合
- Android筆記之Fragment的startActivityForResult(與requestPermissions)Android筆記Fragment
- 樂訊通雲通訊:物聯卡,物與物之間溝通的橋樑
- 樂訊通雲通訊:物聯網路卡與手機卡區別
- Windows git無法與github通訊WindowsGithub
- Vue使用JSBridge與原生APP通訊VueJSAPP
- Flutter Webview網頁與App通訊FlutterWebView網頁APP
- Flutter與android之間的通訊FlutterAndroid
- React Native與Android通訊互動React NativeAndroid
- 【通訊】TETRA 與PDT的區別
- 不同頁面通訊與跨域跨域
- flutter: 執行緒通訊與訊息迴圈Flutter執行緒
- Android使用(TabLayout+ViewPager+fragment)與(FragmentTabHost+ViewPager+Fragment)實現底部狀態列切換AndroidTabLayoutViewpagerFragment