Hug*_*ohm 19 java android kotlin
我实际上是在 kotlin 中创建一个新应用程序,以在带有格式信息的框中显示一个 xml 文件
问题是,当我构建应用程序时,有activity_main,即返回“未解析引用”的id
Unresolved reference: id
Unresolved reference: id
Run Code Online (Sandbox Code Playgroud)
这里是 MainActivity.kt
package com.example.instantsystem
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.ArrayAdapter
import android.widget.ListView
import java.io.IOException
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val listView = findViewById<ListView>(id.listView)
var employees: List<Employee>? = null
try {
val parser = XmlPullParserHandler()
val istream = assets.open("employees.xml")
employees = parser.parse(istream)
val adapter = ArrayAdapter(this, R.layout.simple_list_item_1, employees)
listView.adapter = adapter
} catch (e: IOException) {
e.printStackTrace()
}
}
}
Run Code Online (Sandbox Code Playgroud)
这里的activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.instantsystem.MainActivity">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)
我不明白错误,我导入了包并在xml中定义了它。我的代码有什么问题?
Sko*_*pEN 83
在我的情况下,删除import android.R解决了这个问题。
Sam*_*Sam 11
在最新版本上kotlin-android-extensions需要在内部应用build.gradle(模块..)
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-android-extensions'
}
Run Code Online (Sandbox Code Playgroud)
小智 6
正如@SkorpEN 提到的那样,对我来说,删除import android.R也解决了这个问题。
不知从何添加import android.R的原因是,如果你将 java 代码粘贴到 Kotlin 中,它会自动转换为 Kotlin,有时这个import android.R也会自动添加。
小智 6
就我而言;我MainActivity.kt在自动导入中编辑了代码,所以我必须添加:
import com.package.name.R
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20520 次 |
| 最近记录: |