Android中夜间模式以及隐藏导航控件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/super_cmf_no1/article/details/52052035

                     Android+5.0开发范例代码大全笔记。



           

            夜间模式,指的是调暗屏幕导航控件,不是将它们移除而减少屏幕中系统元素。使用夜间模式需要两个标识,分别是SYSTEM_UI_FLAG_LOW_PROFILE和SYSTEM_UI_FLAG_VISIBLE,夜间模式标识为SYSTEM_UI_FLAG_LOW_PROFILE,恢复默认模式的标识为SYSTEM_UI_FLAG_VISIBLE。通过getSystemUiVisible()方法检测当前状态,setSystemUiVisible()方法设置状态。相关代码如下:           


            

public class MainActivity extends Activity {

    private Button open;//打开夜间模式

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
    }

    private void initView() {
        open = (Button) findViewById(R.id.turnNoNightMode);
        open.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                int currentVis = v.getSystemUiVisibility();
                int newVis;
                if ((currentVis & View.SYSTEM_UI_FLAG_LOW_PROFILE)
                        == View.SYSTEM_UI_FLAG_LOW_PROFILE) {
                    newVis = View.SYSTEM_UI_FLAG_VISIBLE;
                } else {
                    newVis = View.SYSTEM_UI_FLAG_LOW_PROFILE;
                }
                v.setSystemUiVisibility(newVis);
            }
        });
    }
}
               

                 

                    隐藏导航控件通过标识SYSTEM_UI_FLAG_HIDE_NAVIGATION,它会隐藏按钮功能,当你再点击屏幕上任意地方,它又会恢复功能,回到上一界面。代码如下:

                    

                  

    open.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            v.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
        }
    });
}
          

                          

           

展开阅读全文

没有更多推荐了,返回首页