zoukankan      html  css  js  c++  java
  • 夜间模式 (文字不改变)

    package com.chenke.night;

    import java.nio.MappedByteBuffer;

    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Context;
    import android.content.SharedPreferences;
    import android.content.SharedPreferences.Editor;
    import android.graphics.Color;
    import android.graphics.PixelFormat;
    import android.view.Gravity;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.WindowManager;
    import android.view.WindowManager.LayoutParams;
    import android.widget.Button;
    import android.widget.TextView;

    public class MainActivity extends Activity{
        private WindowManager wm;
        private View myView;
        private Button night;
        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);
            night = (Button) findViewById(R.id.btn_dayAndnight);
            String mode = sp.getString("skin", "");
            if(mode!=null||!mode.equals("")){
                if(mode.equals(NIGHT)){
                    night();
                }else{
                    day();
                }
            }
            night.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
                    if(flage%2==0){
                        night();
                        night.setText("白天模式");
                        night.setTextColor(Color.WHITE);
                        flage++;
                    }else{
                        day();
                        night.setText("夜间模式");
                        night.setTextColor(Color.BLACK);
                        flage++;
                    }
                }
            });
        }
        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();
            }
        }
    }

  • 相关阅读:
    PHP 之ZIP压缩与解压缩文件
    xmind8 破解激活教程
    MIT 6.824 RPC 和多线程
    [AGC019E]Shuffle and Swap
    [CF1060F] Shrinking Tree
    【算法与数据结构】前序中序后序线索化二叉树及遍历
    绘画参考 多角度透视手的动作姿态线稿
    数学概率期望总结
    C#中方法、类等的默认访问修饰符~
    mysql 设置连接超时
  • 原文地址:https://www.cnblogs.com/weiyangge/p/5310579.html
Copyright © 2011-2022 走看看