【发布时间】:2017-01-18 21:31:30
【问题描述】:
我想在片段的操作栏左侧添加一个后退按钮作为菜单。但我不希望后退箭头作为我的图标。
actionBar.setDisplayHomeAsUpEnabled(true);
上面的代码行给出了后退箭头符号。相反,我想使用一些自定义图像。同样使用该自定义图像应该可以将其恢复到之前的活动。
【问题讨论】:
-
你在使用工具栏吗?
-
没有。我正在使用操作栏
我想在片段的操作栏左侧添加一个后退按钮作为菜单。但我不希望后退箭头作为我的图标。
actionBar.setDisplayHomeAsUpEnabled(true);
上面的代码行给出了后退箭头符号。相反,我想使用一些自定义图像。同样使用该自定义图像应该可以将其恢复到之前的活动。
【问题讨论】:
我添加了类似的内容:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
getActivity().onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
它对我有用。
【讨论】:
将此添加到styles.xml 中的主题:
<item name="android:homeAsUpIndicator">@drawable/my_icon</item>
它将覆盖默认图标。默认情况下,它使用以下 id:
android.R.id.home
您可以使用此 ID 导航回您之前的活动:
View homeView = getActionBar().getCustomView().findViewById(android.R.id.home);
homeView.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v)
{
//Go back
}
});
或
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// Respond to the action bar's Up/Home button
case android.R.id.home:
//Return back to your activity!
return true;
}
return super.onOptionsItemSelected(item);
}
欲了解更多信息,请查看官方文档:https://developer.android.com/training/implementing-navigation/ancestral.html
【讨论】: