Android 使用工具栏导航回父活动
所以我想把它分解 我有两个活动:主活动和子活动Android 使用工具栏导航回父活动,android,android-manifest,android-toolbar,Android,Android Manifest,Android Toolbar,所以我想把它分解 我有两个活动:主活动和子活动 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.final_create_cardview_1_image); //Toolbar myToolbar = (android
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.final_create_cardview_1_image);
//Toolbar
myToolbar = (android.support.v7.widget.Toolbar) findViewById(R.id.app_bar_pic);
setSupportActionBar(myToolbar);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
private void setSupportActionBar(Toolbar myToolbar)
{
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
NavUtils.navigateUpFromSameTask(this);
}
return super.onOptionsItemSelected(item);
}
<activity
android:name=".MyActivity"
android:label="Promenade"
android:parentActivityName=".MyActivity">
<meta-data android:name="android.support.PARENT_ACTIVITY"
android:value=".CardFinal.imageActivity">
</meta-data>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</activity>
<activity android:name=".CardFinal.imageActivity"
android:label="PickImage">
</activity>
当我处于子活动状态时,我想按下返回主页按钮
然后返回主页
我尝试将android.support.PARENT_活动放入清单中,但仍然无法使其工作。也许我没看到什么明显的东西。希望你们能帮忙
这是我的子活动
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.final_create_cardview_1_image);
//Toolbar
myToolbar = (android.support.v7.widget.Toolbar) findViewById(R.id.app_bar_pic);
setSupportActionBar(myToolbar);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
private void setSupportActionBar(Toolbar myToolbar)
{
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
NavUtils.navigateUpFromSameTask(this);
}
return super.onOptionsItemSelected(item);
}
<activity
android:name=".MyActivity"
android:label="Promenade"
android:parentActivityName=".MyActivity">
<meta-data android:name="android.support.PARENT_ACTIVITY"
android:value=".CardFinal.imageActivity">
</meta-data>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</activity>
<activity android:name=".CardFinal.imageActivity"
android:label="PickImage">
</activity>
这是我的舱单。第一个活动是主要活动。第二个活动是亚活动
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.final_create_cardview_1_image);
//Toolbar
myToolbar = (android.support.v7.widget.Toolbar) findViewById(R.id.app_bar_pic);
setSupportActionBar(myToolbar);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
private void setSupportActionBar(Toolbar myToolbar)
{
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
NavUtils.navigateUpFromSameTask(this);
}
return super.onOptionsItemSelected(item);
}
<activity
android:name=".MyActivity"
android:label="Promenade"
android:parentActivityName=".MyActivity">
<meta-data android:name="android.support.PARENT_ACTIVITY"
android:value=".CardFinal.imageActivity">
</meta-data>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</activity>
<activity android:name=".CardFinal.imageActivity"
android:label="PickImage">
</activity>
我不太确定我是否正确地执行了清单,stackoverflow上的其他解决方案非常混乱。如果我能直接回答这个问题,那就太棒了。谢谢 清单是错误的
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
//NavUtils.navigateUpFromSameTask(this);
finish();
}
return super.onOptionsItemSelected(item);
}
<activity
android:name=".MyActivity"
android:label="Promenade"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</activity>
<activity android:name=".CardFinal.imageActivity"
android:parentActivityName=".MyActivity"
android:label="PickImage">
<meta-data android:name="android.support.PARENT_ACTIVITY"
android:value=".MyActivity">
</meta-data>
</activity>
也可以使用Intent或onBackPressed()方法 试试这个
如果使用AppCompatActivity,那么当前最好的方法可能是重写onSupportNavigateUp()方法 以下是Kotlin中的代码:
override fun onSupportNavigateUp(): Boolean {
onBackPressed()
return true
}
@DemoMail你是说一个switch语句?