The*_*ter 6 android android-fragments
我正在使用jfeinstien10的SlidingMenu.拉出的菜单是Fragment.当用户点击菜单项时,它会执行以下操作:
FragmentTransaction t = getActivity().getSupportFragmentManager().beginTransaction();
SherlockListFragment mFrag = new ItemsFragment();
t.replace(R.id.main_frag, mFrag);
t.commit();
Run Code Online (Sandbox Code Playgroud)
但是,我听说Fragment从另一个人那里控制a是不好的做法Fragment.在这种情况下,这是一种可接受的方法吗?或者我应该对父母使用回调方法FragmentActivity.
如果回调方法是正确的方法,我可以看一个如何工作的例子吗?
waq*_*lam 21
我建议你把它留给活动级别,而不是在片段中执行事务.为此,请在您的活动中定义一个公共方法,然后从您的片段中调用它.例如:
假设您的活动是:
class MainActivity extends Activity{
....
public void replaceFragment(){
FragmentTransaction t = getSupportFragmentManager().beginTransaction();
SherlockListFragment mFrag = new ItemsFragment();
t.replace(R.id.main_frag, mFrag);
t.commit();
}
....
}
Run Code Online (Sandbox Code Playgroud)
在您的片段中,进行以下调用:
((MainActivity)getActivity()).replaceFragment();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5860 次 |
| 最近记录: |