元々はJavaで実装しましたがIntellijを利用してkotlinに変換しました。ところがAlertDialogを開く瞬間APPがcrashしました。このAlertDialogはsetAdapter()を利用して自分で実装したListAdapterを表示する
val builder = AlertDialog.Builder(this)
builder.setAdapter(playingAdapter) { dialog, item ->
Log.d("MyApp", item.toString())
}
class CustomListAdapter //public constructor
(//context
private val context: Context, //data source of the list adapter
private val items: List<Music>
) : BaseAdapter() {
override fun getView(
position: Int,
convertView: View,
parent: ViewGroup
): View {}
原因はconvertView: Viewはダメです。convertViewはnullになる可能性があるのでconvertView: View?すべきです。
override fun getView(
position: Int,
convertView: View?,
parent: ViewGroup
): View