[英]How to display back button on action bar in android another activity
当我从主活动中移动另一个活动时,我想在操作栏上使用后退按钮。 请帮助我我现在该怎么办。
我是android开发的新手,请解释一些细节。
谢谢你。
只需在[CurrentActivity].java
文件的onCreate
方法中添加代码即可。
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
这行代码只会在你的Action Bar
添加一个后退按钮,但现在点击它后什么也不会发生。
并将其添加到您的[CurrentActivity].java
,这将添加该按钮的工作:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
Intent intent = new Intent(CurrentActivity.this, MainActivity.class);
startActivity(intent);
finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
并将CurrentActivity
替换为您的活动名称,并将MainActivity
替换为您在按下后退按钮后要发送给用户的活动
你可以这样做。 在您的AndroidManifest.xml文件中,您可以告诉您的活动他的父活动是什么。 这里的 MainActivity 是 SecondActivity 的父 Activity。 SecondActivity 将有后退按钮,按下后会将用户带到 MainActivity。
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SecondActivity"
android:parentActivityName=".MainActivity"/>
在操作栏上显示 Android 系统后退按钮 .. 如果您使用的是androidx
库,那么最好使用
supportActionBar
而不是actionBar
在科特林
显示和处理 Android 系统后退按钮的完整代码:
supportActionBar?.apply {
setDisplayHomeAsUpEnabled(true)
title = "SET YOUR ACTIVITY TITLE"
}
单击系统后退箭头按钮时如何关闭活动:
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when(item.itemId){
android.R.id.home -> finish()
}
return super.onOptionsItemSelected(item)
}
您可以通过在 Android 清单文件中提及父活动来启用活动栏中的后退按钮。 例如,我必须在我的项目中的 AddNotes 活动的活动栏中启用后退按钮栏。 当用户单击时,它应该将用户重定向到主活动,因此在 Android 清单文件中,我将这样的父活动设置为 AddNotes 活动。
<activity android:name=".AddNotes" android:parentActivityName=".MainActivity"></activity>
它将在添加笔记活动的活动栏中启用后退按钮。
或者,如果您也可以像这样在活动栏中启用后退按钮,
val actionbar = supportActionBar
actionbar!!.title = "Add Note"
actionbar.setDisplayHomeAsUpEnabled(true)
actionbar.setDisplayHomeAsUpEnabled(true)
(此代码为 Kotlin 代码)
更多知识请参考: https : //developer.android.com/training/appbar/up-action
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.