我希望你能够在屏幕点击时隐藏和显示操作栏和导航栏(无论在屏幕的哪个位置),并在2秒后隐藏它们。
我读到可以使用以下代码:
Handler h = new Handler();
h.postDelayed(new Runnable() {
@Override
public void run() {
// DO DELAYED STUFF
getActionBar().hide();
}
}, delaytime);
但是我的问题是,单击时没有任何反应。
另一个问题是,我希望在没有活动的情况下屏幕不会变黑。
编辑
我尝试了这个。
public void onUserInteraction() {
// TODO Auto-generated method stub
super.onUserInteraction();
getActionBar().show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
getActionBar().hide();
}
}, 1000);
}
但是当我触摸屏幕时,状态栏会显示。只有在第二次触摸后,操作栏才会显示。操作栏在1秒后消失,但状态栏和导航栏仍然保持显示。 我不希望状态栏出现,并且当操作栏隐藏时,我也希望导航栏隐藏。
** 我在Oncreat活动中添加了全屏标志。 谢谢。
编辑2
public void fullScreenLandSpace(){
//This function configure FullScreen and LandSpace Only!
getActionBar().setDisplayShowTitleEnabled(false);
getActionBar().setDisplayShowHomeEnabled(false);
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN|View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
decorView.setSystemUiVisibility(uiOptions);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
getActionBar().hide();
}
@Override
public void onUserInteraction() {
// TODO Auto-generated method stub
super.onUserInteraction();
getActionBar().show();
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
getActionBar().hide();
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION|View.SYSTEM_UI_FLAG_FULLSCREEN);
}
}, 1000);
}
View.SYSTEM_UI_FLAG_FULLSCREEN
标志? - Sagar Pilkhwalandroid:theme="@style/Theme.Sherlock.NoActionBar"
这个主题被使用了吗? - Sagar Pilkhwal