0

文件的图像

listItemView = inflater.inflate( R.layout.list_item , parent,false)

我无法从 inflate 方法访问布局文件

class AdapterEarthquake(var cntx: Context,var earthquake: ArrayList<earthquake>):ArrayAdapter<earthquake>( cntx,0, earthquake){

override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {

    var listItemView = convertView
    if(listItemView == null) {
        val inflater:LayoutInflater = LayoutInflater.from(cntx)
        listItemView = inflater.inflate(R.layout.list_item, parent,false)
    }

    val currentItem = getItem(position)

    val magTextView = listItemView.findViewById<TextView>(R.id.magnitude_text_view)

    return super.getView(position, convertView, parent)
}

}

幅度文本视图也显示错误,但这可能是因为 listItemView 显示错误

文件名保存为 list_item

val magTextView = listItemView.findViewById<TextView>(R.id.magnitude_text_view)

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/mag"
        style="@style/mag"
        android:id="@+id/magnitude_text_view"/>
    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="London"
        android:layout_weight="60"
        android:layout_gravity="center"
        android:textColor="@color/black"
        android:id="@+id/place_text_view"

        />
    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="Feb 26, 1998"
        android:layout_weight="40"
        android:layout_gravity="center"
        android:id="@+id/date_text_view"

        />
4

1 回答 1

0

将此添加到您的 kotlin 类文件中,您要在其中扩展布局。

导入 kotlinx.android.synthetic.main.activity_main。*

并在 build.gradle (:app) 文件中添加如下插件

id 'kotlin-android'
id 'kotlin-android-extensions'

注意:使用元素 id,而不是文件本身

<androidx.appcompat.widget.AppCompatTextView
    android:id="@+id/list_item"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp"
    />
于 2021-12-26T12:19:27.973 回答