【问题标题】:Android - Jetpack compose missing referencesAndroid - Jetpack 撰写缺少的参考资料
【发布时间】:2019-12-15 11:36:20
【问题描述】:

我正在尝试按照url 上的官方 google Jetpack 撰写教程,但 Android 工作室在解决修饰符 Height()

时遇到问题

我 100% 确定我已按照教程导入了正确的依赖项,但是,找不到此修饰符。它没有被弃用,因为它仍然是官方文档中的引用 here

fun NewsStory() {
    val image = +imageResource(R.drawable.header)
        Column(
            modifier = Spacing(16.dp)
            ) {
            Container(modifier = Height(180.dp) wraps Expanded) {
                DrawImage(image)
            }

            HeightSpacer(16.dp)

            Text("A day in Shark Fin Cove")
            Text("Davenport, California")
            Text("December 2018")
        }
}

我错过了什么吗?

【问题讨论】:

    标签: android kotlin layout android-jetpack-compose


    【解决方案1】:

    我假设你正在使用dev02(因为谷歌的文档没有更新) ui-layout 依赖的依赖,因为 Height() 被添加到 开发03。将您的 ui-layout 依赖项更改为 dev03

    implementation 'androidx.ui:ui-layout:0.1.0-dev03'
    

    它应该可以工作

    【讨论】:

    • 我使用了正确的依赖项dev03,但这是我的 IDE 的问题。我猜 gradle 缓存以某种方式持有对先前依赖项 dev02 的引用。不过还是谢谢。
    【解决方案2】:

    我需要添加以下内容才能运行:

    //app/build.gradle
    ...
    dependencies {
    
        ...                                                                   
    
        //Jetpack Compose
        implementation 'androidx.compose:compose-compiler:0.1.0-dev09'
        implementation 'androidx.compose:compose-runtime:0.1.0-dev09'
        implementation 'androidx.ui:ui-layout:0.1.0-dev09'
        implementation 'androidx.ui:ui-material:0.1.0-dev09'
        implementation 'androidx.ui:ui-tooling:0.1.0-dev09'
        implementation 'androidx.ui:ui-framework:0.1.0-dev09'
    }
    

    【讨论】:

      【解决方案3】:

      就 Jetpack Compose Dependencies 而言,这是我的设置。您不需要所有这些,因此请随意跳过超级特定的 - https://github.com/vinaygaba/Learn-Jetpack-Compose-By-Example/blob/master/build.gradle#L24

      贴在这里供参考

      'compose': [
                          'composeComplier': "androidx.compose:compose-compiler:${versions.compose}",
                          'composeRuntime': "androidx.compose:compose-runtime:${versions.compose}",
                          'core': "androidx.ui:ui-core:${versions.compose}",
                          'foundation': "androidx.ui:ui-foundation:${versions.compose}",
                          'tooling': "androidx.ui:ui-tooling:${versions.compose}",
                          'layout': "androidx.ui:ui-layout:${versions.compose}",
                          'material': "androidx.ui:ui-material:${versions.compose}",
                          'savedInstanceState': "androidx.ui:ui-saved-instance-state:${versions.compose}",
                          'uiTest': "androidx.ui:ui-test:${versions.compose}",
                          'uiLiveData': "androidx.ui:ui-livedata:${versions.compose}"
                  ],
      

      【讨论】:

        【解决方案4】:

        正如Geoff Langenderfer 所说,从dev03 更改为dev09 有效。

        //app/build.gradle
         dependencies {
        
            implementation "org.jetbrains.kotlin:kotlin-stdlib:1.3.72"
            implementation 'androidx.core:core-ktx:1.3.0'
            implementation 'androidx.appcompat:appcompat:1.1.0'
            implementation 'com.google.android.material:material:1.1.0'
        
            implementation 'androidx.ui:ui-framework:0.1.0-dev09'
            implementation 'androidx.ui:ui-layout:0.1.0-dev09'
            implementation 'androidx.ui:ui-material:0.1.0-dev09'
            implementation 'androidx.ui:ui-tooling:0.1.0-dev09'
        
            testImplementation 'junit:junit:4.13'
            androidTestImplementation 'androidx.test.ext:junit:1.1.1'
            androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
        }
        

        【讨论】:

          猜你喜欢
          • 2017-08-27
          • 2021-07-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-02-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多