最近在修改A311D2方案固件,系统Settings发现很多bug 最明显的是左上角有个箭头样子的图标,通常认为是返回键,点击之后没有任何效果,目测这个是ActionBar的按键。
SettingsBaseActivity里面有一段这样的代码:
// This is to hide the toolbar from those pages which don't need a toolbar originally.
final Toolbar toolbar = findViewById(R.id.action_bar);
if (!isToolbarEnabled() || isAnySetupWizard) {
toolbar.setVisibility(View.GONE);
return;
}
setActionBar(toolbar);
试了一下将isToolbarEnabled()返回值改成false之后,返回箭头就没有了,那就是这个toolBar了。
查看SettingsActivity里面有关于Actionbar按键的onClick 仿照写一个ToolBar的onClick
Toolbar toolbar = findViewById(R.id.action_bar);
if(toolbar != null) {
Log.d(LOG_TAG, "setNavigationOnClickListener not null");
toolbar.setVisibility(View.VISIBLE);
setActionBar(toolbar);
toolbar.setNavigationOnClickListener(new OnClickListener(){
public void onClick(View v) {
Log.d(LOG_TAG, "setNavigationOnClickListener");
setResult(RESULT_CANCELED, null);
finish();
}
});
}
编译烧录之后,返回箭头点击就有效果了。