2020 Feb. 05.
カンマ区切りの1行の文字列データをダイアログ上にリスト表示するkotlinコード例
・カンマ区切り文字列をListに変換
・システムに組み込まれた"android.R.layout.simple_list_item_1"を介して、ListをArrayAdapterに関連付ける
・ArrayAdapterをダイアログ上のレイアウト内のListViewにセットする
class MyListDataDialogFragment: DialogFragment(){ var CommaSeparatedStr: String = "ab,cd,ef,gh,ijk" // The data to be displayed in ListView override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { // get Dialog val builder = AlertDialog.Builder(activity) val inflater = requireActivity().layoutInflater val myDialogView = inflater.inflate(R.layout.my_list, null) // arrange data if (CommaSeparatedStr.isEmpty() ) { CommaSeparatedStr = getString(R.string.NoData) // "R.string.NoHistory" has "No Data" message. } CommaSeparatedStr = CommaSeparatedStr.removeSuffix(",") val myDataList = CommaSeparatedStr.split(",") // myDataListをArrayAdapterに関連づける val myAdapter = ArrayAdapter(this.requireContext(), android.R.layout.simple_list_item_1, myDataList) // ArrayAdapterをダイアログ上のレイアウト内のListViewにセットする val myListView = myDialogView.findViewById<ListView>(R.id.listViewFiles) myListView.adapter = myAdapter // display dialog builder.setView(myDialogView) .setTitle("My Data List") .setPositiveButton("OK") { _, _ -> // nothing is done } return builder.create() } }