android-activity - 无法从 Android App 中的菜单打开的子活动返回父活动
问题描述
manifest:
<activity
android:name=".SettingsActivity"
android:parentActivityName="com.boropost.app.MainActivity" />
<activity
android:name=".FindActivity"
android:parentActivityName="com.boropost.app.MainActivity" />
menu:
<item
android:id="@+id/action_settings"
app:showAsAction="never"/>
<item
android:id="@+id/action_find"
app:showAsAction="always"/>
就我而言,子 SettingsActivity 是通过操作栏上未显示的菜单项打开的。单击后退按钮不会返回到父 MainActivity。MainActivity 中的 onActivityCreated 也没有被触发,但是通过操作栏上显示的菜单项打开的子 FindActivity 没有这个问题。
解决方案
请在 onCrate() 方法上添加以下行
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
并在您的孩子 SettingsActivity 中添加以下方法
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
finish();
break;
}
return true;
}
推荐阅读
- kubernetes - 添加标签无法通过动态资源和客户端运行
- python - 根据用户输入在列表中创建列表
- zsh - 为什么`which`打印出一个脚本?
- javascript - 具有单独的最小最大日期依赖性的多个动态 Jquery 日期选择器
- mongodb - 从文档中的文档数组中获取数据
- scala - 从 kafka 主题中聚合数据并上传到新主题中
- r - 从 NodeRed 调用 R-Script
- reactjs - 在 React 中刷新数据后动态更新 highcharts 对象
- spring-boot - 有没有办法在 elasticsearch spring boot 存储库中执行 query_string 搜索
- swift - 如何通过使用 RxSwift 在 collectionCell 中点击视图来获取 indexPath?