Как создать диалог с тремя пользовательскими кнопками на выбор? - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь создать подобный диалог, но только с тремя цветными кнопками, которые можно нажимать

enter image description here

При нажатии на цвет диалоговое окно исчезает и кнопка выбора появляется на главном экране

В настоящее время у меня есть только три xml файла для разных кнопок, и я не знаю, как продолжить.

Я думаю о создании диалоговое окно с одним списком выбора, но я не уверен, что можно отобразить три кнопки по горизонтали, а вместо текста показать кнопки.

Может кто-нибудь помочь мне?

1 Ответ

0 голосов
/ 16 января 2020

Я думаю о создании диалогового окна с одним списком выбора, но я не уверен, возможно ли отобразить три кнопки по горизонтали, а вместо текста показать кнопки.

Это невозможно, и реализация в любом случае может отличаться для разных версий ОС или производителей.

Вы захотите создать свой собственный макет xml и создать собственный DialogFragment, который раздувает ваш макет xml в DialogFragment.onCreateView().

dialog_color_button_picker. xml

<LinearLayout>
    ... however you want to do your layout ...
</LinearLayout>

ColorButtonPickerDialog.kt

class ColorButtonPickerDialog: DialogFragment() {
    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        val rootView = inflater.inflate(R.layout.dialog_color_button_picker, container, false)
    }
}

В пределах ColorButtonPickerDialog.onCreateView() затем вы можете ссылаться на ваши взгляды по идентификатору и добавлять слушателей, как если бы вы использовали обычный фрагмент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...