日夜间模式切换
来源:互联网 发布:java new int 编辑:程序博客网 时间:2024/05/01 05:33
package com.example.night_day;import android.annotation.SuppressLint;import android.app.Activity;import android.content.Intent;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;import android.graphics.PixelFormat;import android.os.Bundle;import android.view.Gravity;import android.view.View;import android.view.WindowManager;import android.view.View.OnClickListener;import android.view.WindowManager.LayoutParams;import android.widget.ImageView;import android.widget.TextView;public class MainActivity extends Activity {private WindowManager mWindowManger;private ImageView imageView_night;private TextView text_night;private boolean isDay;// 设置夜间模式private SharedPreferences skinSp;private View myView;private final static String DAY = "day";private final static String NIGHT = "night";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mWindowManger = (WindowManager) getSystemService(WINDOW_SERVICE);imageView_night = (ImageView) findViewById(R.id.image_night);text_night = (TextView) findViewById(R.id.textView1);imageView_night.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {if (isDay) {night();imageView_night.setImageResource(R.drawable.dayicon_leftdrawer_normal_night);text_night.setText("日间");} else {day();imageView_night.setImageResource(R.drawable.nighticon_leftdrawer_normal);text_night.setText("夜间");}isDay = !isDay;skinSp.edit().putBoolean("isDay", isDay).commit();}});init();}// public void next(View v) {// startActivity(new Intent(this, SecondActivity.class));// }// 日间夜间模式切换private void init() {skinSp = getSharedPreferences("skinchange", MODE_PRIVATE);String mode = skinSp.getString("skin", "");if (mode != null || !mode.equals("")) {if (mode.equals(NIGHT)) {night();isDay = false;} else {day();isDay = true;}}}@SuppressLint("ResourceAsColor")private void night() {@SuppressWarnings("deprecation")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.CENTER;// params.y = 10;if (myView == null) {myView = new View(this);myView.setBackgroundColor(0x80000000);}mWindowManger.addView(myView, params);Editor edit = skinSp.edit();edit.putString("skin", NIGHT);edit.commit();}private void day() {if (myView != null) {mWindowManger.removeView(myView);Editor edit = skinSp.edit();edit.putString("skin", DAY);edit.commit();}}@Overridepublic void onDestroy() {super.onDestroy();String mode = skinSp.getString("skin", "");if (mode.equals(NIGHT)) {removeSkin();}}public void removeSkin() {if (myView != null) {mWindowManger.removeView(myView);}}}
0 0
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- 日夜间模式切换
- Android 切换日夜间模式
- 日夜间模式的切换
- 轻松切换日夜间模式
- 日夜间模式的切换
- 日夜间模式的切换
- Android日夜间模式切换
- Android日夜间切换模式
- 游戏程序员的规划
- 使用AFNetworking 3 内存泄露
- ROS在ARDUINO的应用
- 菜鸟级C语言银行管理系统
- 位运算实现加法
- 日夜间模式切换
- xlistview_header.xml
- junit4xi注释详解
- 51 NOD 1138 连续整数的和(简单数学公式)
- Android开机自启动服务的编写
- 常用二极管IN4148和单片机驱动的一些关系
- 测试关闭mojo utf-8
- jsonp详解详情
- 绘制直方图