Jetpack Compose 主题:XML 主题文件和 Kotlin 主题文件的区别
Jetpack Compose theming: difference between XML theme file and Kotlin theme file
我是 Android 初学者,我正在开始使用 Jetpack Compose。我对新的 Compose 项目模板创建的这两个集合文件感到困惑:themes.xml
与 Theme.kt
,以及 colors.xml
与 Color.kt
。 colors.xml
和Color.kt
都包含颜色定义,themes.xml
和Theme.kt
都包含原色定义。
XML 文件和 Kotlin 文件有什么区别?我应该手动同步他们的内容吗?
What's the difference between the XML file and the Kotlin file?
默认情况下,android 使用 XML 文件来设置主题...如果您正在使用撰写(这显然是您正在做的)那么您需要像这样设置主题
setContent {
AppThemeName { //AppThemeName is the name of your theme .. its autogenerated at the beginning by AppName+Theme
}
}
Compose 使用 Theme.kt
获取主题信息,类似地 Color.kt
获取颜色信息
Am I supposed to manually sync their contents?
不,但这取决于...通常,如果您在整个应用程序中仅使用撰写,那么您不需要手动同步 XML 文件,因为 Theme.kt 文件具有主题您将使用的信息。
但有些情况下你需要在 theme.xml 中提及某些属性,例如 windowSplashScreenAnimatedIcon, statusBarColor
,而在 compose Theme.kt
中默认无法定义这些属性
我是 Android 初学者,我正在开始使用 Jetpack Compose。我对新的 Compose 项目模板创建的这两个集合文件感到困惑:themes.xml
与 Theme.kt
,以及 colors.xml
与 Color.kt
。 colors.xml
和Color.kt
都包含颜色定义,themes.xml
和Theme.kt
都包含原色定义。
XML 文件和 Kotlin 文件有什么区别?我应该手动同步他们的内容吗?
What's the difference between the XML file and the Kotlin file?
默认情况下,android 使用 XML 文件来设置主题...如果您正在使用撰写(这显然是您正在做的)那么您需要像这样设置主题
setContent {
AppThemeName { //AppThemeName is the name of your theme .. its autogenerated at the beginning by AppName+Theme
}
}
Compose 使用 Theme.kt
获取主题信息,类似地 Color.kt
获取颜色信息
Am I supposed to manually sync their contents?
不,但这取决于...通常,如果您在整个应用程序中仅使用撰写,那么您不需要手动同步 XML 文件,因为 Theme.kt 文件具有主题您将使用的信息。
但有些情况下你需要在 theme.xml 中提及某些属性,例如 windowSplashScreenAnimatedIcon, statusBarColor
,而在 compose Theme.kt