在 setArguments 之后调用 onCreateView 时?

有一个问题。

所以在我的适配器类中,我执行下面的代码。

DrinkFragment fragment3 = new DrinkFragment();Bundle bundle3 = new Bundle();
bundle3.putInt("type",2);
fragment3.setArguments(bundle3);return fragment3;

所以我做了一个 DrinkFragment 的实例。
要在 onCreateView(~~~) 的 DrinkFragment.java 中执行 getArguments(),必须在fragment3.setArgument(bundle3)之后执行 onCreateView(~~~)对吗?

所以我不认为 onCreateView(~~) 在我创建 DrinkFragment 实例的那一刻被执行。那么什么时候执行呢?

提前致谢。;)


海绵宝宝撒
浏览 80回答 1
1回答

米琪卡哇伊

抱歉,如果我的代码不是用 Java 编写的,但我在 kotlin 中传递参数时所做的是让 oncreateview 先返回视图,然后调用 onviewcreated 函数,以便在创建视图后执行。这是 Kotlin 中的代码: override fun onViewCreated(view: View, savedInstanceState: Bundle?) {                    val menufragment: Fragment = YourFragment()                    val args = Bundle()                    args.putString("str1", text) //text and text1 are strings                    args.putString("str2", text1)                menufragment.arguments = args                    val fr = fragmentManager?.beginTransaction()                    fr?.replace(R.id.content_frame, menufragment)                    fr?.addToBackStack(null)                    fr?.commit()}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java