【问题标题】:How to create a theme in application's Android code [duplicate]如何在应用程序的 Android 代码中创建主题 [重复]
【发布时间】:2020-01-24 06:50:33
【问题描述】:
我想让系统在应用程序中创建自定义主题,
是否可以在代码中生成一个主题,然后通过setTheme()方法应用于激活?
如果不是,如何以不同的方式实现?
【问题讨论】:
标签:
android
android-theme
【解决方案1】:
一般来说,主题可以在xml文件中生成,修改颜色、尺寸和样式。 (https://developer.android.com/guide/topics/ui/look-and-feel/themes)
您可以以编程方式更改已定义的主题。
public void onCreate(Bundle savedInstanceState) {
setTheme(android.R.style.Theme);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
但是,您不能在运行时修改 xml 文件。如果要更改视图项目的尺寸和颜色。您应该创建将所有尺寸和颜色存储为常量的 java 类,并且您可以调用 setTheme() 方法以编程方式设置项目属性。