我需要一些帮助,在我的应用程序中,我有第一个活动(主要)然后我调用一个新活动(带片段,标签,滑动)现在我想启用左上角的主页按钮。它有效,但它结束了我的应用程序,然后回到我的“手机屏幕”?
这是我的清单
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="overskov.rhkbrand"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="18" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="overskov.rhkbrand.MainActivity"
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="overskov.rhkbrand.Under_menu"
android:label="@string/title_activity_under_menu"
android:parentActivityName="overskov.rhkbrand.MainActivity"
>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="overskov.rhkbrand.MainActivity" />
</activity>
<activity
android:name="overskov.rhkbrand.Etage_menu"
android:label="@string/title_activity_etage_menu" >
</activity>
</application>
</manifest>
这里是我的片段
公共类Under_menu扩展了FragmentActivity实现 ActionBar.TabListener {
private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;
// Tab titles
private String[] tabs = { "Opgang A", "Studie/Gang", "Opgang B", "Bar/Fest", "Opgang C", "Opgang D" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.under_menu);
// Initilization
viewPager = (ViewPager) findViewById(R.id.pager);
actionBar = getActionBar();
mAdapter = new TabsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
actionBar.setDisplayHomeAsUpEnabled(true);
根据android开发人员的说法:
一旦在清单中指定了父活动,并使用setDisplayHomeAsUpEnabled()启用了Up按钮,您的工作就完成了,操作栏正确导航。
那么我做错了什么?
由于 丹尼斯
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button1 = (Button) findViewById(R.id.save);
button1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(getApplicationContext(), Under_menu.class));
finish();
}
});
Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(getApplicationContext(), Etage_menu.class));
finish();
}
});
}
}
答案 0 :(得分:1)
如何覆盖主页按钮?
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}