如何以编程方式更改应用程序的默认主题?

michalbrz

在我的Android应用程序中,我正在尝试实现change Theme我设法更改了所有想要的颜色,并且在运行时中的主题运行良好(我SharedPreferences用来存储选定的颜色)。

但是,当我从头开始打开应用程序时,一开始默认主题可见(ActionBar准确地说颜色),只有一两秒钟后,加载应用程序时,颜色才变为SharedPreferences

那么如何更改默认值Theme呢?还是有什么方法可以改变加载时可见的颜色?

更新:我正在应用主题onCreate,这还不够。

理查德·勒·梅苏里尔

我通常的建议是在清单中使用透明的全屏主题。

启动活动时,请切换到自定义主题。

与此相结合,我总是建议使用alpha动画从应用程序主题过渡到活动主题。这样可以防止在自定义主题出现时对用户造成伤害。


清单主题定义为:

android:theme="@android:style/Theme.Translucent.NoTitleBar"

基本活动onCreate()方法:

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);

    // set your custom theme here before setting layout
    super.setTheme(android.R.style.Theme_Holo_Light_DarkActionBar);

    setContentView(R.layout.activity_main);

    overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}

基本淡入:

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="2000"
    android:fromAlpha="0.0"
    android:toAlpha="1.0" />

基本淡出(并不是真正需要,但为了完整性):

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="2000"
    android:fromAlpha="1.0"
    android:toAlpha="0.0" />

有关此问题的进一步相关讨论,请查看我对以下相关问题的回答:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android-如何以编程方式使我的应用程序默认为短信应用程序

来自分类Dev

如何以编程方式将颜色应用于应用程序主题?

来自分类Dev

如何以编程方式更改Eclipse应用程序中的应用程序语言?

来自分类Dev

如何以编程方式更改Eclipse应用程序中的应用程序语言?

来自分类Dev

如何以编程方式为所有活动设置Android应用程序主题

来自分类Dev

iOS 14-如何以编程方式打开默认邮件应用程序?

来自分类Dev

如何以编程方式打开带有myapp文件夹的默认“文件”应用程序?

来自分类Dev

如何以编程方式卸载android系统应用程序?

来自分类Dev

如何以编程方式启动Windows Store应用程序?

来自分类Dev

如何以编程方式从应用程序打开呼叫面板

来自分类Dev

如何以编程方式安装应用程序

来自分类Dev

如何以编程方式将附件从“默认邮件应用程序”添加到iOS中的“ MyApp”?

来自分类Dev

如何更改应用程序:以编程方式更改海拔

来自分类Dev

如何以编程方式从iOS应用程序打开Apple Watch伴侣应用程序

来自分类Dev

如何以编程方式从Windows 10应用程序启动Camera应用程序?

来自分类Dev

如何以编程方式在应用程序设置中打开应用程序许可窗口

来自分类Dev

如何以编程方式从Flutter应用程序中启动应用程序?

来自分类Dev

如何以编程方式快速更改应用程序的可本地化字符串文件?

来自分类Dev

如何以编程方式更改主题颜色:样式,Android属性?

来自分类Dev

如何以编程方式更改主题颜色:样式,属性android?

来自分类Dev

Android,更改应用程序:以编程方式设置SwitchCompat的主题值

来自分类Dev

如何以编程方式管理应用缓存?(退出应用程序时清除它)

来自分类Dev

如何以编程方式快速引用应用程序中的主故事板?

来自分类Dev

Android如何以编程方式确定我的应用程序正在使用哪种XML布局?

来自分类Dev

如何以编程方式强制JavaFX应用程序关闭请求

来自分类Dev

如何以编程方式更新应用程序配置文件中的自定义属性

来自分类Dev

如何以编程方式为Java应用程序的界面设置文本编码?

来自分类Dev

如何以编程方式杀死像其他应用程序这样的聊天头?

来自分类Dev

如何以编程方式计算已安装应用程序的所有缓存大小?

Related 相关文章

  1. 1

    Android-如何以编程方式使我的应用程序默认为短信应用程序

  2. 2

    如何以编程方式将颜色应用于应用程序主题?

  3. 3

    如何以编程方式更改Eclipse应用程序中的应用程序语言?

  4. 4

    如何以编程方式更改Eclipse应用程序中的应用程序语言?

  5. 5

    如何以编程方式为所有活动设置Android应用程序主题

  6. 6

    iOS 14-如何以编程方式打开默认邮件应用程序?

  7. 7

    如何以编程方式打开带有myapp文件夹的默认“文件”应用程序?

  8. 8

    如何以编程方式卸载android系统应用程序?

  9. 9

    如何以编程方式启动Windows Store应用程序?

  10. 10

    如何以编程方式从应用程序打开呼叫面板

  11. 11

    如何以编程方式安装应用程序

  12. 12

    如何以编程方式将附件从“默认邮件应用程序”添加到iOS中的“ MyApp”?

  13. 13

    如何更改应用程序:以编程方式更改海拔

  14. 14

    如何以编程方式从iOS应用程序打开Apple Watch伴侣应用程序

  15. 15

    如何以编程方式从Windows 10应用程序启动Camera应用程序?

  16. 16

    如何以编程方式在应用程序设置中打开应用程序许可窗口

  17. 17

    如何以编程方式从Flutter应用程序中启动应用程序?

  18. 18

    如何以编程方式快速更改应用程序的可本地化字符串文件?

  19. 19

    如何以编程方式更改主题颜色:样式,Android属性?

  20. 20

    如何以编程方式更改主题颜色:样式,属性android?

  21. 21

    Android,更改应用程序:以编程方式设置SwitchCompat的主题值

  22. 22

    如何以编程方式管理应用缓存?(退出应用程序时清除它)

  23. 23

    如何以编程方式快速引用应用程序中的主故事板?

  24. 24

    Android如何以编程方式确定我的应用程序正在使用哪种XML布局?

  25. 25

    如何以编程方式强制JavaFX应用程序关闭请求

  26. 26

    如何以编程方式更新应用程序配置文件中的自定义属性

  27. 27

    如何以编程方式为Java应用程序的界面设置文本编码?

  28. 28

    如何以编程方式杀死像其他应用程序这样的聊天头?

  29. 29

    如何以编程方式计算已安装应用程序的所有缓存大小?

热门标签

归档