#android #xml #android-layout #layout
Вопрос:
Я новичок в Android studio и макетах, я пытаюсь воссоздать что-то, что я даже не знаю, как это называется, что затрудняет поиск ответов. Я воссоздал на изображении ниже то, чего я пытаюсь достичь :
Что я хотел бы сделать, так это 1 : Создать текстовое представление с просьбой выбрать что-то. 2 : Когда мы нажимаем на него, появляется всплывающее окно, отображающее различные вещи на выбор, мы могли бы прокрутить эти вещи, если список длинный. 3 : Затем при нажатии на нужную нам вещь наш выбор отображается в текстовом представлении.
После некоторых исследований самое близкое, что я нашел,-это «выпадающее меню», но оно на самом деле не соответствует тому, к чему я стремлюсь (отображается под текстом вместо всплывающего окна, нет возможности прокручивать внутри, если список вещей длинный, по крайней мере, для учебника, который я нашел).
Ответ №1:
Вы можете использовать AlertDialog
и setItems
для передачи строки массива.
val builder = AlertDialog.Builder(this)
builder.setTitle(R.string.pick_color)
.setItems(R.array.colors_array,
DialogInterface.OnClickListener { dialog, which ->
// The 'which' argument contains the index position
// of the selected item
})
builder.create()
Где R.array.colors_array
находится ваш массив, вы можете определить его в XML или программно.
Пожалуйста, проверьте это
Комментарии:
1. О, большое спасибо ! Кажется, это то, что я искал ! Я попробую это позже этим вечером и расскажу вам, удастся ли мне это сделать 🙂 Если у вас длинный массив, список будет прокручиваться ?
2. Это сработало как волшебство, большое вам спасибо 🙂
3. @Tritize да, он будет прокручиваться, приятно вам помочь 🙂