[Android Studio] -- Day 5 主题变换Theme02

前言

今天读到Theme主题实作,刚好又是app主题色系变化。这次采用setTheme和Style来切换。


正文

  • 利用setTheme的话,必须先在styles.xml档案里先做更新
<resources>
    <!-- 原本的 -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
    
    <!-- 我新增的 -->
    <style name="AppTheme.Translucent" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="android:windowBackground">@color/pink</item>
        <item name="android:colorForeground">@color/white</item>
        <item name="android:colorBackground">@color/pink</item>
    </style>

</resources>
  • onCreate
@Override
    protected void onCreate(Bundle savedInstanceState) {
        //一定要打在super.onCreate和setContentView的上面
        setTheme(R.style.AppTheme_Translucent);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    }
  • 结果
    https://ithelp.ithome.com.tw/upload/images/20210224/20134772rWm6738Iu0.pnghttps://ithelp.ithome.com.tw/upload/images/20210224/201347722vjcvKJvyu.png

结论

这次利用setTheme的方法直接做切换的也是写死的,不太能用spinner和button做切换(我菜)。但像DAY1那篇用layout就必须重复多做几次不同色调layout,东西一多工程量也挺大的,一改也要动全身。如过要能活动式必须要利用animation来辅助,不过那就是另外一个世界了,等之後练习到animation再来试试看。


<<:  【左京淳的JAVA学习笔记】第六章 继承与多型

>>:  从单元测试探讨 MVC to MVVM 的差异

RestTemplate介绍(Day10)

熟悉JWT的我敲开了大门的门锁,走进了房间 同学:来,你过来~~ 我:干嘛啦 (被推着坐下),哇,同...

WhatsApp Business API 功能|绝对不会被block的广播工具?

你的 WhatsApp Business 帐号有试过被 WhatsApp 封锁吗?相信有不少企业都试...

Day 17 - Spring Boot 例外处理

经过上一篇Day 16 - Spring Boot 资料验证的功能实作後,我们的业务逻辑层需要处理的...

DAY 24 优化检视团购讯息

前面的检视团购讯息,检视团购讯息用文字不好检视 这边计画用matplotlib的pyplot将资讯输...

【D4】汇入交易资料

前言 这是需要调整资料库连线资讯,修改成符合MySQL的格式。 本次也会参考《【Day10】Azur...