我遵循了有關如何在 kotlin 中執行串列視圖的教程,但遇到了這個問題。我是 Kotlin 的新手,我不明白我的活動的 getter 和 setter 是什么。從我閱讀的內容來看,它應該是自動放置的。
private lateinit var listView ListView
預期屬性 getter 或 setter
所有代碼:
package com.example.librariasemnelor;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button
import android.widget.ListView;
private lateinit var listView ListView
class SecondActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_second)
val actionBar = supportActionBar
if(actionBar != null){
actionBar.title = "Meniu principal"
actionBar.setDisplayHomeAsUpEnabled(true)
}
listView = findViewById<ListView>(R.id.recipe_list_view)
// 1
val recipeList = Recipe.getRecipesFromFile("recipes.json", this)
// 2
val listItems = arrayOfNulls<String>(recipeList.size)
// 3
for (i in 0 until recipeList.size) {
val recipe = recipeList[i]
listItems[i] = recipe.title
}
// 4
val adapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, listItems)
listView.adapter = adapter
}
}
uj5u.com熱心網友回復:
private lateinit ...應該放在class塊內。并且:必須在 之后添加listView。
class SecondActivity : AppCompatActivity() {
private lateinit var listView: ListView
override fun onCreate(savedInstanceState: Bundle?) {
...
}
...
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/400117.html
標籤:科特林
下一篇:回收者視圖不尊重串列項的邊距
