ListVIewにitemを表示する

Android開発に入門しました。今回はListViewを使ってみました。

ListViewを追加します。 制約を適当につけidをつけます。今回はItemListViewにしました。

f:id:churabou:20180914172741p:plainf:id:churabou:20180914172747p:plain

実際のコード

・MainActivity

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        setUpListView()
    }

    fun setUpListView() {
        val items = Array(20, { i -> "item $i" })
        val adapter = ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items)
        ItemListView.adapter = adapter
        ItemListView.setOnItemClickListener { _, view, _, _ ->
            val textView = view.findViewById<TextView>(android.R.id.text1)
            Toast.makeText(this, "Clicked: ${textView.text}", Toast.LENGTH_SHORT).show()
        }
    }
}

プレビュー

f:id:churabou:20180914172743p:plain

所感

実機を持ってなくmac book airエミュレーターを動かすのがストレスですがいい感じです。 多分iOSで同じことやろうと、IBでやるにしろコードでやるにしろdelegateやdataSourceなど少し初心者にはとっつきにくかったと記憶します。