byt*_*0de 3 android fragment android-fragments
我是 android 新手,我从 MianActivity 被称为 fragment_1,然后从 fragment_1 被称为 fragment_2。那工作正常。当我从 fragment_2 按下后退按钮时它不起作用(我想回到 fragment_1)
Fragment someFragment = new Fragment2();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.relative_layout_to_replace, someFragment );
transaction.addToBackStack(null);
transaction.commit();
Run Code Online (Sandbox Code Playgroud)
如果您使用工具栏后退按钮,请确保您的片段中有以下代码:
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//required for back button to work
setHasOptionsMenu(true);
}
Run Code Online (Sandbox Code Playgroud)
并覆盖此功能:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Log.i(TAG,"Back Button Pressed");
switch (item.getItemId()) {
case android.R.id.home:
Log.i(TAG,"home on backpressed");
getActivity().onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8227 次 |
| 最近记录: |