【发布时间】:2012-09-13 12:23:01
【问题描述】:
我试图弄清楚片段是如何工作的。 我有 3 个类,MainActivity、Fragment1 和 Fragment2。
MainActivity 扩展了 SherlockFragmentActivity 和
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Fragment1 firstFragment = new Fragment1();
firstFragment.setArguments(getIntent().getExtras());
getSupportFragmentManager().beginTransaction()
.add(R.id.fragment_container1, firstFragment).commit();
现在,我将 Fragment1 加载到我的 fragment_container 中,它显示得很好。
(所以 main_activity.xml 只有一个)
好的,Fragment1 扩展了 SherlockFragment,然后什么都不做
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment1layout, container, false);
所以我只是从具有一个文本视图和一个按钮的 .xml 中对其进行扩展。
现在我可以在哪里实例化 Button,并为他提供代码以将 Fragment1 替换为 Fragment2?
代码是什么,因为我现在“在 Fragment1 中”,所以我需要以某种方式与 Fragment holder 沟通并告诉它“用 Fragment2 替换我”。
Fragment2 也扩展了 SherlockFragment,并且什么都不做,将它膨胀为空的 .xml
【问题讨论】:
标签: android android-fragments actionbarsherlock