Android 在actionbar主页图标上设置OnClickListener会使图标脱离按下状态
设置以下选项将使主页图标显示按下状态:Android 在actionbar主页图标上设置OnClickListener会使图标脱离按下状态,android,android-actionbar,Android,Android Actionbar,设置以下选项将使主页图标显示按下状态: actionBar.setHomeButtonEnabled(true); ImageView iconImage = (ImageView) activity.findViewById(android.R.id.home); iconImage.setOnClickListener(new android.view.View.OnClickListener() { @Override public void onClick(View v
actionBar.setHomeButtonEnabled(true);
ImageView iconImage = (ImageView) activity.findViewById(android.R.id.home);
iconImage.setOnClickListener(new android.view.View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
但是,设置OnClickListener后,主页图标停止显示按下状态:
actionBar.setHomeButtonEnabled(true);
ImageView iconImage = (ImageView) activity.findViewById(android.R.id.home);
iconImage.setOnClickListener(new android.view.View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
有没有关于如何防止禁用按键状态的想法?要处理点击
主页
图标,您不需要设置onClickListener
,您需要执行以下操作
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getItemId() == android.R.id.home) { //app icon in action bar clicked; go back
//do something
return true;
}
return super.onOptionsItemSelected(item);
}
但我选择了这样做。知道如何使ImageView仍然显示按下状态吗?我选择侦听器的方式,因为它更直接,而且OnOptions ItemSelected从未被调用。不幸的是,我不知道如何显示按下状态..但上述方法是文档中提到的..当我使用actionbar.setIcon(resId)时;此函数不起作用(我使用setDisplayHomeAsUpEnabled(false);)