Android AVD始终使用默认Material3主题,无法应用自定义主题求助
问题描述
这个问题已经困扰我好几天了。Android Studio的AVD似乎只会给我的应用套用默认的Material3主题。同一套代码在另一台设备上用完全相同的AVD配置运行正常,所以我推测问题和硬件有关——换了新硬件后这个功能就失效了。
已尝试的无效方案
- 测试了多款API 33版本的AVD默认配置,包括Pixel 7 Pro、Pixel 6 Pro、Pixel 4和Nexus 6,均无效果
- 手动编辑部分AVD对应的
config.ini文件,设置使用主机图形,没有作用 - 回退到更换硬件前能正常运行的应用
master分支旧版本代码,问题依旧 - 尝试让主题跟随系统亮色/暗色模式自动切换,没有任何变化
- 预览功能正常,Android Studio和gradle构建过程中均无警告信息
- 使用的Android Studio版本为Giraffe 2022.3.1
硬件信息
新硬件配置为Intel i7 3700k、RTX 4060 8GB GDDR6,如需更详细信息可随时提供。
应用代码
这套代码在其他硬件上能正常应用自定义主题,因此省略部分细节。项目未依赖低版本Material Design。
@Composable fun App ( finish: () -> Unit ) { val navController = rememberNavController() AppTheme( useDarkTheme = true ) { AppFrame( navController = navController ){ NavGraph(navController = navController) } } }
主题代码
@Composable fun AppTheme( useDarkTheme: Boolean = isSystemInDarkTheme(), content: @Composable () -> Unit ) { val colors = if (!useDarkTheme) { LightAltColors } else { DarkAltColors } MaterialTheme( colorScheme = colors, typography = AppTypography, content = content ) val systemUiController = rememberSystemUiController() systemUiController.setSystemBarsColor(MaterialTheme.colorScheme.surface) systemUiController.setNavigationBarColor( MaterialTheme.colorScheme.surfaceColorAtElevation(NavigationBarDefaults.Elevation) ) content() }
内容的提问来源于stack exchange,提问作者hcl2000
相关产品推荐
相关产品推荐

