我为MainActivity
以外的所有活动实施了一个后退按钮。
我的问题是我在MainActivity
也有一个后退按钮。
希望我已经导入了正确的班级:
import android.support.v4.app.NavUtils;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getActionBar().setDisplayHomeAsUpEnabled(true);
[...]
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
case R.id.ueber:
startActivity(new Intent(this, menu_main_Activity.class));
return true;
}
return super.onOptionsItemSelected(item);
}
AndroidManifest:
<application
android:allowBackup="true"
android:icon="@mipmap/levox"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".ListViewActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ListTasksActivity"
android:label="@string/projekte"
android:parentActivityName=".ListViewActivity">
</activity>
<activity android:name=".ListSingleTaskActivity"
android:label="@string/tasks"
android:parentActivityName=".ListTasksActivity">
</activity>
<activity android:name=".menu_main_Activity"/>
</application>
为什么我也会在MainActivity
获得一个后退按钮?
答案 0 :(得分:7)
第一个问题是: “Back-Button”是什么意思?
您的意思是指向左侧的小箭头所示的按钮,位于应用程序左上角的应用程序图标旁边?该按钮在Android-universe中称为“ 向上按钮 ”。 由于您的代码中包含以下行,因此您的MainActivity中会显示此内容:
getActionBar().setDisplayHomeAsUpEnabled(true);
方法
protected void onCreate(Bundle savedInstanceState)
所以你应该拿走这一行。 要禁用按钮的外观,还要禁用功能,您必须查看代码的这一部分:
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
case R.id.ueber:
startActivity(new Intent(this, menu_main_Activity.class));
return true;
}
在这里,你必须删除部分
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
编辑: 但如果您实际上想要在活动中看到“向上按钮”,那么
必须设置代码
getActionBar().setDisplayHomeAsUpEnabled(true);
在onCreate() - 该Activity的方法!
在Manifest.xml中提供parent-Activity(您已经在做什么),例如:
android:parentActivityName=".ListViewActivity"
并放置部分
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
进入具有“向上按钮”的活动。
如果您有任何其他意思,请指明您的问题并提供更多代码:)
一些有用的链接: