Jetpack 正式文件说有7种依赖关系:
compose.animation
compose.compiler
compose.foundation
compose.material
compose.material3
compose.runtime
compose.ui但是,我可以使用合成的所有可组合和动画功能,而无需添加compose.animation和compose.foundation的依赖关系。我添加了如下的依赖项:
val compose = listOf(
"androidx.compose.ui:ui:${Versions.Compose.Master}",
"androidx.compose.ui:ui-tooling:${Versions.Compose.Master}",
"androidx.compose.compiler:compiler:${Versions.Compose.Master}",
"androidx.compose.material:material:${Versions.Compose.Master}",
"androidx.activity:activity-compose:${Versions.Compose.Activity}",
"androidx.compose.runtime:runtime-livedata:${Versions.Compose.Master}",
"androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.Compose.Lifecycle}"
)添加所有组合依赖关系对项目有什么好处吗?
发布于 2022-01-17 06:00:30
jetpack组成级别:
material(Button,Text,...) -> foundation(Column,Image,...) -> animation(Animatable,animateXXAsState,...) -> ui(Alignment,Modifier,...) -> runtime(remember,State,...)因此,您所引用的高级包的内容将包含从属内容。例如,您所引用的材料将包含基础、动画、用户界面和运行时,因此您只需要引用该材料,如果您的项目不打算使用该材料样式,则只需导入该基础。
编写编译器层实际上是kotlin编译器插件,您不需要引入依赖项
composeOptions {
kotlinCompilerExtensionVersion compose_version
kotlinCompilerVersion kotlin_version
}请尝试
val compose = listOf(
"androidx.compose.ui:ui-tooling:${Versions.Compose.Master}",
"androidx.compose.material:material:${Versions.Compose.Master}",
"androidx.activity:activity-compose:${Versions.Compose.Activity}",
"androidx.compose.runtime:runtime-livedata:${Versions.Compose.Master}",
"androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.Compose.Lifecycle}"
)
composeOptions {
kotlinCompilerExtensionVersion compose_version
kotlinCompilerVersion kotlin_version
}https://stackoverflow.com/questions/70718772
复制相似问题