Android 找不到“kotlinPlugin”和“darkThemeColors”
当我试图使用jetpack的compose库时,我被困在jetpack文档源中提到的步骤中:。我无法使用kotlinPlugin,因为我得到了以下异常Android 找不到“kotlinPlugin”和“darkThemeColors”,android,android-jetpack,android-jetpack-compose,Android,Android Jetpack,Android Jetpack Compose,当我试图使用jetpack的compose库时,我被困在jetpack文档源中提到的步骤中:。我无法使用kotlinPlugin,因为我得到了以下异常 Caused by: org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException: Could not find method kotlinPlugin() for arguments [androidx.compose:comp
Caused by: org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException: Could not find method kotlinPlugin() for arguments [androidx.compose:compose-compiler:0.1.0-dev02] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
而且,我不能使用深色和浅色。以下是我添加的Gradle依赖项
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
kotlinPlugin "androidx.compose:compose-compiler:0.1.0-dev02"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core-ktx:1.1.0'
implementation 'androidx.ui:ui-framework:0.1.0-dev02'
implementation 'androidx.ui:ui-layout:0.1.0-dev02'
implementation 'androidx.ui:ui-material:0.1.0-dev02'
implementation 'androidx.ui:ui-tooling:0.1.0-dev02'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'org.jetbrains.kotlin:kotlin-reflect:1.3.50'
}
我缺少依赖吗?我检查了MaterialTheme和MaterialColors类,但没有找到深色和浅色配色。在jetpackCompose示例应用程序jetnews中,深色配色和浅色配色在下面的Themes.kt文件exmaple中定义,因此您需要定义颜色
val lightThemeColors = MaterialColors(
primary = Color(0xFFDD0D3C),
primaryVariant = Color(0xFFC20029),
onPrimary = Color.White,
secondary = Color.White,
onSecondary = Color.Black,
background = Color.White,
onBackground = Color.Black,
surface = Color.White,
onSurface = Color.Black,
error = Color(0xFFD00036),
onError = Color.White
)
/**
* Note: Dark Theme support is not yet available, it will come in 2020. This is just an example of
* using dark colors.
*/
val darkThemeColors = MaterialColors(
primary = Color(0xFFEA6D7E),
primaryVariant = Color(0xFFDD0D3E),
onPrimary = Color.Black,
secondary = Color(0xFF121212),
onSecondary = Color.White,
surface = Color(0xFF121212),
background = Color(0xFF121212),
onBackground = Color.White,
onSurface = Color.White
)
下面是jetnews项目的截图
对于jetnews示例,请检查jetpackCompose示例应用程序jetnews中的此链接,深色颜色和浅色颜色在下面的Themes.kt文件exmaple中定义,因此您需要定义颜色
val lightThemeColors = MaterialColors(
primary = Color(0xFFDD0D3C),
primaryVariant = Color(0xFFC20029),
onPrimary = Color.White,
secondary = Color.White,
onSecondary = Color.Black,
background = Color.White,
onBackground = Color.Black,
surface = Color.White,
onSurface = Color.Black,
error = Color(0xFFD00036),
onError = Color.White
)
/**
* Note: Dark Theme support is not yet available, it will come in 2020. This is just an example of
* using dark colors.
*/
val darkThemeColors = MaterialColors(
primary = Color(0xFFEA6D7E),
primaryVariant = Color(0xFFDD0D3E),
onPrimary = Color.Black,
secondary = Color(0xFF121212),
onSecondary = Color.White,
surface = Color(0xFF121212),
background = Color(0xFF121212),
onBackground = Color.White,
onSurface = Color.White
)
下面是jetnews项目的截图
对于jetnews示例,请检查此链接您可以根据自己的喜好定义暗颜色和亮颜色
对于1.0.0-beta02,只需使用和功能。
比如:
val purple500 = Color(0xFF6200EE)
private val LightColorPalette = lightColors(
primary = purple500,
primaryVariant = purple700,
secondary = Color(0xFF03DAC6),
onSecondary = Color.White
)
例如,您可以定义:
@Composable
fun MaterialThemeSample(darkTheme: Boolean = isSystemInDarkTheme(), content: @Composable() () -> Unit) {
val lightColorsPalette = lightColors(
primary = Color(0xFF1EB980),
secondary = Color(0xFF03DAC6)
)
val darkColorsPalette = darkColors(
primary = Color(0xFF66ffc7),
secondary = Color.Red
)
val colors = if (darkTheme) darkColorsPalette else lightColorsPalette
MaterialTheme(
colors = colors,
typography = typography,
shapes = shapes,
content = content
)
}
并使用它:
setContent {
MaterialThemeSample() {
.....
}
}
您可以根据自己的喜好定义暗颜色和亮颜色
对于1.0.0-beta02,只需使用和功能。
比如:
val purple500 = Color(0xFF6200EE)
private val LightColorPalette = lightColors(
primary = purple500,
primaryVariant = purple700,
secondary = Color(0xFF03DAC6),
onSecondary = Color.White
)
例如,您可以定义:
@Composable
fun MaterialThemeSample(darkTheme: Boolean = isSystemInDarkTheme(), content: @Composable() () -> Unit) {
val lightColorsPalette = lightColors(
primary = Color(0xFF1EB980),
secondary = Color(0xFF03DAC6)
)
val darkColorsPalette = darkColors(
primary = Color(0xFF66ffc7),
secondary = Color.Red
)
val colors = if (darkTheme) darkColorsPalette else lightColorsPalette
MaterialTheme(
colors = colors,
typography = typography,
shapes = shapes,
content = content
)
}
并使用它:
setContent {
MaterialThemeSample() {
.....
}
}
非常感谢。我认为android已经定义了一些默认主题。这就是为什么我担心我可能会错过一些依赖项。谢谢。我认为android已经定义了一些默认主题。这就是为什么我担心我可能会错过一些依赖项。