###前提・実現したいこと
AndroidアプリをKotlinで作っています。
15分おきのTimePickerを作りたくて00から45まで15分刻みのNumberPickerを表示させたいです。
45まで15刻みの配列を作ってNumberPickerに渡したのですが、Spinnerが45まで行っても先頭の00が表示されません。
該当のコードの様に配列の要素を重複させて表示すると、想定通りグルグル回ってくれるので以下のような認識なのですがあってますか?
- Spinnerの要素が足りないからグルグル回らない。
- 要素の少ないSpinnerをグルグル回したい場合は、同じ要素の配列を冗長に宣言するのが一般的な対応方法
###該当のソースコード
kotlin
1 // 最後(45)まで行くと次が表示されない 2 val MM_ARRAY = arrayOf("00", "15", "30", "45") 3 // 想定通り最後(45)まで行くと先頭(00)の戻るようなSpinnerになる 4// val MM_ARRAY = arrayOf("00", "15", "30", "45", "00", "15", "30", "45") 5 6 override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { 7 val view = activity.layoutInflater.inflate(R.layout.fragment_date_time_piker_dialog, null, false) 8 9 /* ***** 略 ***** */ 10 11 mmPickerView = view.findViewById(R.id.time_mm_picker) as NumberPicker 12 mmPickerView!!.displayedValues = null 13 mmPickerView!!.maxValue = MM_ARRAY.size - 1 14 mmPickerView!!.minValue = 0 15 mmPickerView!!.displayedValues = MM_ARRAY 16 17 /* ***** 略 ***** */ 18 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/28 06:41