我想要实现的是使用全屏模式的图库:点击屏幕时会显示控件,再次点击时会隐藏。 我试图建立一个OnClickListener
这种方式来管理系统UI全屏活动不允许滑动
public void onClick(View v) {
//toggle state
systemUIVisible = !systemUIVisible;
//show controls
if(systemUIVisible) {
controlsView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
}
//hide controls
else {
controlsView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar
| View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
| View.SYSTEM_UI_FLAG_IMMERSIVE);
}
}
我也在
controlsView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {... }
管理控件的可见性。
的问题是,该系统UI能见度切换每当controlsView
是TOUCHED,而不是当它的CLICKED。
当用户尝试以全屏模式滑动画廊时,会导致显示控件的不良行为。
任何帮助表示赞赏。