预蜂窝碎片android
在之前的版本中,版本 11 的示例(由 google 提供)初始化了布局中的片段,并且 隐藏并显示它们。 另一方面,兼容性示例实际上是使用构造函数创建片段。
1)常规片段:
片段fragment = (MyFragment) getFragmentManager().findFragmentById(R.id.fragment);
2) 兼容性包示例:
Fragmentfragment = new MyFragment(this);
如果我遵循第二种方式,活动周期似乎会变得疯狂。
例如,getActivity() 在片段中返回 null。
还有其他一些问题。
在支持兼容包的情况下,哪种方法是正确的?
In previous version say version 11 examples(by google) inits the fragments in an layout and
hides and shows them.
The compatibility example on the other hand literally creates the fragments with a constructor.
1) Regular fragments :
Fragment fragment = (MyFragment) getFragmentManager().findFragmentById(R.id.fragment);
2) The Compatibility package examples :
Fragment fragment = new MyFragment(this);
IF I FOLLOW THE SECOND WAY it seems that the activity cycle goes crazy.
For instance , getActivity() returns null in the fragment.
And There are few other issues.
Which is the right way to do it yet supporting compatibility package?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您使用第二种方式,您只是创建一个不附加到任何活动的类的实例。
完成此操作后,您需要使用添加或替换动态添加它。
如果您已将片段嵌入到 Activity 用于扩充其视图的 xml 文件中,则第一个选项有效
If you use the second way you are just creating an instance of the class that is not attached to any activity.
After doing that you need to add it dynamically either by using add or replace.
The first option works if you have embedded the fragment in the xml file that your activity uses to inflate its view