AppCompatActivity中的Android活动结果API未解析引用

tf7tbtn2  于 2023-02-06  发布在  Android
关注(0)|答案(2)|浏览(185)

我尝试使用新的Activity Results API来替换startActivityForResult。如果我在Fragment中调用registerForActivityResult,一切正常。但是,如果我在AppCompatActivity中调用相同的方法,IDE将显示"unresolved reference"错误。无论如何,应用构建时没有任何错误,并按预期运行。如何在IDE中删除该"unresolved reference"错误?
我使用:导入androidx.活动.结果.合同.活动结果合同导入androidx.应用程序.应用程序CompatActivity
依赖性:"安卓系统.活动:活动-ktx:${版本.活动_ktx}""安卓系统.片段:片段-ktx:${版本.片段_ktx}"

kmb7vmvb

kmb7vmvb1#

刚刚挣扎了几个小时,我正在使用Android Studio 4. 1 Beta。我认为这是一个IDE错误,因为Gradle可以构建。
此时,您可以通过强制转换为ComponentActivity来绕过此问题:

private val requestPermission = (this as ComponentActivity).registerForActivityResult(ActivityResultContracts.RequestPermission()) { isGranted ->

}

希望在下一个IDE版本中可以解决这个问题。

4dc9hkyq

4dc9hkyq2#

在您的build.gradle中添加此依赖项

def activity_version = "1.2.1"
 def fragment_version = "1.3.1"
 implementation "androidx.activity:activity-ktx:$activity_version"
 implementation "androidx.fragment:fragment-ktx:$fragment_version"

相关问题