当前位置: 首页 > 知识库问答 >
问题:

Jetpack作曲不能再导入文本或setContent了

诸葛立果
2023-03-14

我最近一直在玩Jetpack Compose,我已经完成了这里的基本教程。然后我开始查看他们的Jetnews示例项目。现在我已经准备好开始自己的项目,但现在当我在Jetnewssample项目的同一父目录中创建一个新项目时,Android Studio无法再导入androidx.ui.core。文本或androidx.ui.core.setContent。我可以从同一位置导入其他类,但现在我只收到一个未解决的引用错误。这是一个新项目集,以空的编写活动开始。代码如下:


import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.Composable
import androidx.ui.core.Text
import androidx.ui.core.setContent
import androidx.ui.material.MaterialTheme
import androidx.ui.tooling.preview.Preview

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MaterialTheme {
                Greeting("Android")
            }
        }
    }
}

@Composable
fun Greeting(name: String) {
    Text(text = "Hello $name!")
}

@Preview
@Composable
fun DefaultPreview() {
    MaterialTheme {
        Greeting("Android")
    }
}

这是模块的gradle构建文件:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"

    defaultConfig {
        applicationId "com.franklin.sanctified"
        minSdkVersion 21
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
    buildFeatures {
        compose true
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.core:core-ktx:1.1.0'
    implementation 'androidx.ui:ui-layout:0.1.0-dev03'
    implementation 'androidx.ui:ui-material:0.1.0-dev03'
    implementation 'androidx.ui:ui-tooling:0.1.0-dev03'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

共有3个答案

淳于思淼
2023-03-14

在我的例子中,问题是我缺少compose的活动集成。< code>setContent是< code>ComponentActivity类的扩展函数,在< code >包androidx . activity . compose 中定义

仅导入:

implementation 'androidx.activity:activity-compose:1.4.0'
郎恺
2023-03-14

这些似乎在 dev03ui 框架中。尝试将该依赖项添加到您的阵容中:

implementation "androidx.ui:ui-framework:0.1.0-dev03"
汪晨
2023-03-14

更新日期:2021年5月

在应用程序级Gradle或kts文件中为集合内容{..}添加以下依赖项

implementation("androidx.activity:activity-compose:1.3.0-alpha07")
 类似资料:
  • 我使用命令安装了textblob。但现在我正尝试导入它,并出现以下错误: ModuleNotFoundError:没有名为“textblob”的模块 我在Windows10系统中使用Spyder C:\Users\Diego

  • 您可以将由其他应用程序创建的文件文本导入到图稿中。 Illustrator 支持用于导入文本的以下格式: 用于 Windows 97、 98、 2000、 2002、 2003 和 2007 的 Microsoft® Word 用于 Mac OS X 2004 和 2008 的 Microsoft Word • RTF(富文本格式) • 使用 ANSI、Unicode、Shift JIS、GB23

  • 问题内容: 我是AngularJS的新手,我遇到的一个问题是无法解决,在stackoverflow上也有类似的问题,但似乎并没有帮助我。我基本上有一个可以通过ng- click更新的表单,但是一旦我在任何文本框中输入文本,这些文本框就不再更新。 这是我的HTML 这是有人单击链接时调用的我的函数 问题答案: 您的链接需要登录。 如果我不得不猜测您的问题,则可能与角度范围问题有关。尝试将ng-mod

  • 所以我试图用Jetpack Compose创建一个应用程序。我有一个屏幕功能,它包含一个没有顶部应用程序栏的脚手架,一个用于导航的底部栏和一个设置在底部栏中的浮动操作按钮。这一切都很好。 但是,当我将NavHost添加到脚手架的内容时,整个事情就停止了工作。没有NavHost,一切都很好,只是内容是屏幕的可组合功能。我尝试了不同数量的NavHost可组合位置,不同的填充值都无济于事。 没有NavH

  • 我正在使用react、redux和next.js创建一个项目,并希望在js中导入CSS文件。 我遵循了next.js/#css和next css中的说明,但发现css样式不起作用。 我的代码如下: pages/index.js: next.config.js: style.css: package.json: 问题: 1.Chrome中有一个“未捕获的语法错误”,但它似乎不会影响页面的呈现。但我仍

  • 当我使用要求时,我得到引用错误:要求没有定义,当我使用导入/导出时,我得到同步错误:不能在模块外部使用导入语句。 是否可能是因为我试图在连接到超文本标记语言文件的JavaScript文件上使用此命令?因为当我在server.js文件(没有连接到任何超文本标记语言文件)中使用此命令时,我通常可以使用要求。 如果有,我该如何克服这个问题。我得到了与每个超文本标记语言页面连接的JavaScript文件,