当用户单击屏幕上的任意位置时,我希望操作栏隐藏,再次按下时它应该重新出现。
我知道有一个东西叫做 actionbar.hide(); 并展示,但你能帮我如何实现它吗?:)
当用户单击屏幕上的任意位置时,我希望操作栏隐藏,再次按下时它应该重新出现。
我知道有一个东西叫做 actionbar.hide(); 并展示,但你能帮我如何实现它吗?:)
只是隐藏():
getActionBar().hide();
当你想隐藏它,并使用show():
getActionBar().show()
当你想展示它。就是这样。
请记住,如果您使用View.SYSTEM_UI_FLAG_FULLSCREEN,这将无法正常工作。
试试这个。您可以根据您的建议调用 hide 或 show 方法
public class AbstractActivity Activity {
private boolean showActions = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActionBar bar = getSupportActionBar();
if (bar != null) {
bar.setHomeButtonEnabled(true);
bar.setDisplayShowHomeEnabled(true);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id) {
case android.R.id.home:
return true;
default:
// Nothing to do here
return super.onOptionsItemSelected(item);
}
}
private void handleActionBarTitle(boolean show) {
ActionBar actionBar = getSupportActionBar();
if (actionBar == null) {
return;
}
actionBar.setDisplayShowTitleEnabled(show);
}
protected void disableActions() {
this.showActions = false;
}
protected void enableActions() {
this.showActions = true;
}
protected void hideActionBarTitle() {
handleActionBarTitle(false);
}
protected boolean showActions() {
return showActions;
}
protected void showActionTitle() {
handleActionBarTitle(true);
}
您的活动只需要扩展此 AbstractActivity