前提・実現したいこと
英単語帳をkotlinとRealmで作成しています。
下記のファイルをアダプタとして呼び出してデータベースに書き込むように作りました。
発生している問題・エラーメッセージ
RecyclerViewAdapter.ktの37行目と38行目の
wordbook?.frontwords wordbook?.backwords
の部分が未解決の参照となってしまいます。
該当のソースコード
package com.example.wordsnote import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView import androidx.recyclerview.widget.RecyclerView import io.realm.OrderedRealmCollection import io.realm.RealmRecyclerViewAdapter class RecyclerViewAdapter(data: OrderedRealmCollection<WordsInsert>) : RealmRecyclerViewAdapter<WordsInsert, RecyclerViewAdapter.ViewHolder>(data, true) { init { setHasStableIds(true) } //ビューを保持する class ViewHolder(cell: View) : RecyclerView.ViewHolder(cell) { val frontwords: TextView = cell.findViewById(android.R.id.text1) val backwords: TextView = cell.findViewById(android.R.id.text2) } //RecyclerViewが新しいViewHolderが必要なときに呼び出す override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val inflater = LayoutInflater.from(parent.context) val view = inflater.inflate( android.R.layout.simple_list_item_2, parent, false ) return ViewHolder(view) } //指定された場所にデータを表示する override fun onBindViewHolder(holder: ViewHolder, position: Int) { val wordbook: WordsInsert? = getItem(position) holder.frontwords.text = wordbook?.frontwords holder.backwords.text = wordbook?.backwords } //指定した位置にアイテムを返す override fun getItemId(position: Int): Long { return super.getItem(position)?.id ?: 0 } }
試したこと
変数をnullableにしたり、中ガッコのミスなどを試しました。
補足情報(FW/ツールのバージョンなど)
realmのバージョン:6.0.2
kotlinのバージョン:1.4.30
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。