zoukankan      html  css  js  c++  java
  • 白天黑夜模式转换

    public class MainActivity extends Activity{

        private WindowManager wm;

        private View myView;

        private Button button;

        private SharedPreferences sp;

        private final static String DAY = "day";

        private final static String NIGHT = "night";

        private int flage = 0;


        @Override

        protected void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);

            setContentView(R.layout.activity_main);

            sp = this.getSharedPreferences("skinchange", Context.MODE_PRIVATE);

            button = (Button) findViewById(R.id.btn_dayAndnight);

            String mode = sp.getString("skin", "");

            if(mode!=null||!mode.equals("")){

                if(mode.equals(NIGHT)){

                    night();

                }else{

                    day();

                }

            }

            button.setOnClickListener(new OnClickListener() {

                
                @Override
                public void onClick(View v) {

            SharedPreferences sp2=getSharedPreferences("aa", MODE_APPEND);
                    int flage=sp2.getInt("bb", 0);
                    if(flage%2==0){

                        night();

                        button.setText("白天模式");

                        button.setTextColor(Color.WHITE);

                        flage++;

                    }else{

                        day();

                        button.setText("夜间模式");

                        button.setTextColor(Color.BLACK);

                        flage++;

                    }

            SharedPreferences sp1=getSharedPreferences("aa", MODE_APPEND);
                    Editor ed=sp1.edit();
                    ed.putInt("bb", flage);
                    ed.commit();
        
                }

            });

        }
        
    public void night() {

            WindowManager.LayoutParams params = new WindowManager.LayoutParams(
                    LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT,
                    LayoutParams.TYPE_APPLICATION,
                    WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
                            | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
                    PixelFormat.TRANSLUCENT);
            params.gravity=Gravity.BOTTOM;
            params.y=10;
            if(myView==null){
                myView=new TextView(this);
                myView.setBackgroundColor(0x80000000);
            }
            wm.addView(myView, params);
            Editor edit = sp.edit();
            edit.putString("skin", NIGHT);
            edit.commit();
        }

        public void day(){
            if(myView!=null){
                wm.removeView(myView);
                Editor edit = sp.edit();
                edit.putString("skin", DAY);
                edit.commit();
            }
        }
    }

  • 相关阅读:
    判断闰年
    CaesarCode
    substring
    configure: error: Cannot use an external APR with the bundled APR-util
    字符串处理487-3279
    git分支管理
    git解决冲突
    git 分支的创建和切换
    nginx与php-fpm原理
    git 远程仓库与本地项目关联
  • 原文地址:https://www.cnblogs.com/wbp0818/p/5303698.html
Copyright © 2011-2022 走看看