白天夜间模式切换
来源:互联网 发布:国际网络购物平台 编辑:程序博客网 时间:2024/05/16 01:46
点击button实现模式的切换
布局中的代码
<span style="font-size:18px;"><code class="hljs xml has-numbering"><span class="hljs-tag"><<span class="hljs-title">RelativeLayout</span> <span class="hljs-attribute">xmlns:android</span>=<span class="hljs-value">"http://schemas.android.com/apk/res/android"</span> <span class="hljs-attribute">xmlns:tools</span>=<span class="hljs-value">"http://schemas.android.com/tools"</span> <span class="hljs-attribute">android:layout_width</span>=<span class="hljs-value">"match_parent"</span> <span class="hljs-attribute">android:layout_height</span>=<span class="hljs-value">"match_parent"</span> <span class="hljs-attribute">tools:context</span>=<span class="hljs-value">".MainActivity"</span> ></span> <span class="hljs-tag"><<span class="hljs-title">Button</span> <span class="hljs-attribute">android:id</span>=<span class="hljs-value">"@+id/changemode"</span> <span class="hljs-attribute">android:layout_width</span>=<span class="hljs-value">"fill_parent"</span> <span class="hljs-attribute">android:layout_height</span>=<span class="hljs-value">"wrap_content"</span> <span class="hljs-attribute">android:layout_alignParentLeft</span>=<span class="hljs-value">"true"</span> <span class="hljs-attribute">android:layout_alignParentTop</span>=<span class="hljs-value">"true"</span> <span class="hljs-attribute">android:text</span>=<span class="hljs-value">"切换白天夜间模式"</span> /></span><span class="hljs-tag"></<span class="hljs-title">RelativeLayout</span>></span></code></span>
封装的工具包代码
<span style="font-size:18px;"><code class="hljs cs has-numbering">import android.content.Context;import android.content.SharedPreferences;<span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> SPUtils { <span class="hljs-keyword">private</span> <span class="hljs-keyword">static</span> SharedPreferences sp; <span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> <span class="hljs-keyword">void</span> <span class="hljs-title">put</span>(Context ct, String key, String <span class="hljs-keyword">value</span>) { <span class="hljs-keyword">if</span> (sp == <span class="hljs-keyword">null</span>) sp = ct.getSharedPreferences(key, <span class="hljs-number">0</span>); sp.edit().putString(key, <span class="hljs-keyword">value</span>).commit(); } <span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> String <span class="hljs-title">get</span>(Context ct, String key,String <span class="hljs-keyword">value</span>) { <span class="hljs-keyword">if</span> (sp == <span class="hljs-keyword">null</span>) sp = ct.getSharedPreferences(key, <span class="hljs-number">0</span>); <span class="hljs-keyword">if</span> (sp.getString(key, <span class="hljs-string">""</span>) != <span class="hljs-keyword">null</span>) { <span class="hljs-keyword">return</span> sp.getString(key, <span class="hljs-string">""</span>); } <span class="hljs-keyword">return</span> <span class="hljs-keyword">null</span>; }}</code></span>
//工具包的帮助 在主类中调用就能实现模式的切换了 话不多说 下面就让我们展示主类中的代码
<span style="font-size:18px;"><code class="hljs java has-numbering"><span class="hljs-keyword">import</span> android.os.Bundle;<span class="hljs-keyword">import</span> android.app.Activity;<span class="hljs-keyword">import</span> android.view.View;<span class="hljs-keyword">import</span> android.widget.Button;<span class="hljs-keyword">public</span> <span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">MainActivity</span> <span class="hljs-keyword">extends</span> <span class="hljs-title">Activity</span> {</span> <span class="hljs-keyword">private</span> Button changemode; <span class="hljs-annotation">@Override</span> <span class="hljs-keyword">protected</span> <span class="hljs-keyword">void</span> <span class="hljs-title">onCreate</span>(Bundle savedInstanceState) { <span class="hljs-keyword">if</span> (SPUtils.get(<span class="hljs-keyword">this</span>, <span class="hljs-string">"theme"</span>, <span class="hljs-string">"dayTheme"</span>).equals(<span class="hljs-string">"dayTheme"</span>)) { setTheme(R.style.dayTheme); } <span class="hljs-keyword">else</span> { setTheme(R.style.nightTheme); } <span class="hljs-keyword">super</span>.onCreate(savedInstanceState); setContentView(R.layout.activity_main); changemode=(Button) findViewById(R.id.changemode); changemode.setOnClickListener(<span class="hljs-keyword">new</span> View.OnClickListener() { <span class="hljs-annotation">@Override</span> <span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">onClick</span>(View v) { <span class="hljs-keyword">if</span> (SPUtils.get(MainActivity.<span class="hljs-keyword">this</span>, <span class="hljs-string">"theme"</span>, <span class="hljs-string">"dayTheme"</span>).equals( <span class="hljs-string">"dayTheme"</span>)) { SPUtils.put(MainActivity.<span class="hljs-keyword">this</span>, <span class="hljs-string">"theme"</span>, <span class="hljs-string">"nightTheme"</span>); } <span class="hljs-keyword">else</span> { SPUtils.put(MainActivity.<span class="hljs-keyword">this</span>, <span class="hljs-string">"theme"</span>, <span class="hljs-string">"dayTheme"</span>); } recreate(); } }); }}</code></span>
当然了 这些还不够 我们的模式切换是主题的调用 下面是我们白天和夜间的主题模式
<span style="font-size:18px;"><code class="hljs xml has-numbering"> <span class="hljs-comment"><!--白天主题--></span> <span class="hljs-tag"><<span class="hljs-title">style</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"dayTheme"</span> <span class="hljs-attribute">parent</span>=<span class="hljs-value">"AppTheme"</span>></span><span class="css"> <<span class="hljs-tag">item</span> <span class="hljs-tag">name</span>="<span class="hljs-tag">android</span><span class="hljs-pseudo">:textColor"</span>><span class="hljs-id">#525252</span></<span class="hljs-tag">item</span>> <<span class="hljs-tag">item</span> <span class="hljs-tag">name</span>="<span class="hljs-tag">android</span><span class="hljs-pseudo">:background"</span>><span class="hljs-id">#f7f7f7</span></<span class="hljs-tag">item</span>> </span><span class="hljs-tag"></<span class="hljs-title">style</span>></span> <span class="hljs-comment"><!--夜间主题--></span> <span class="hljs-tag"><<span class="hljs-title">style</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"nightTheme"</span> <span class="hljs-attribute">parent</span>=<span class="hljs-value">"AppTheme"</span>></span><span class="css"> <<span class="hljs-tag">item</span> <span class="hljs-tag">name</span>="<span class="hljs-tag">android</span><span class="hljs-pseudo">:textColor"</span>><span class="hljs-id">#868a96</span></<span class="hljs-tag">item</span>> <<span class="hljs-tag">item</span> <span class="hljs-tag">name</span>="<span class="hljs-tag">android</span><span class="hljs-pseudo">:background"</span>><span class="hljs-id">#1e1e2a</span> </<span class="hljs-tag">item</span>> </span><span class="hljs-tag"></<span class="hljs-title">style</span>></span></code></span>
0 0
- 白天夜间模式切换
- 白天夜间模式切换
- 夜间白天模式切换
- 白天夜间模式切换
- 白天夜间模式的切换
- app白天夜间模式切换
- android 白天模式/夜间模式切换
- 白天夜间模式切换(2)
- 白天夜间模式切换(2)
- 夜间白天切换模式以及沉浸式模式
- 安卓中白天模式和夜间模式的切换
- Android中白天模式与夜间模式的切换
- Android主题切换—夜间/白天模式探究
- jquerydemo夜间模式,白天模式
- DKNightVersion 夜间模式/白天模式
- 简单的主题白天夜间切换
- 三行代码实现白天夜间模式流畅切换的实现库
- android设置白天模式和夜间模式
- 项目 - 处理C++源代码的程序
- 神经网络的Trick之Dropout的理解与实现
- java小知识点总结1
- ViewPager+Fragment+FlycoTabLayout,20行代码实现tabbar(菜单切换效果)
- vs中开发Coco2dx显示中文 / 中文乱码问题
- 白天夜间模式切换
- Multi-University 2015 #6 E(hdu 5357 Easy Sequence)
- 分布式系统(一)分布式系统介绍
- C语言基础 优秀习惯起名字与赋初值
- Context应用场景
- lucene中的Filter
- 碎片的生命周期
- 关键子工程
- caffe|Fine-tuning for driver