Intereting Posts
Значение по умолчанию для Bundle.getString (String key) Как получить long & lat значение четырех углов в mapview в android? Почему этот AlertDialog.Builder.setIcon не показывает значок ic_menu_info? Android получает представление о предпочтении в PreferenceActivity Ошибка получения родительского элемента для элемента: ресурс не найден, который соответствует указанному имени после обновления до AppCompat v23 Android API IsConnected возвращает TRUE после выхода из системы Как добавить запись в Календарь Android с веб-страницы html5? Android – приложение для тестирования на Galaxy S8 или LG G6 FragmentManager.getFragmens (). Size () не уменьшается после FragmentTransaction.remove (фрагмент) Android – сохранение изображений, загруженных из Интернета Извлечение контекста из фрагмента Как я могу проверить, что URI изображения действителен в Android? Доступ к целым ресурсам в xml Проблема с Cover CoverDroid на 4.0.3 Samsung Galaxy S2 В чем преимущество апклиба из банки?

В чем разница между Dialog.setContentView (View) и AlertDialog.setView (View)

Я работаю над созданием пользовательского диалогового окна для ввода ввода от пользователя. Я заметил, что когда я использую AlertDialog я могу добавить в AlertDialog виджеты, такие как EditText с помощью setView() . Я AlertDialog настройку AlertDialog и заметил, что Dialog имеет метод setContentView() . В подклассе AlertDialog я мог бы использовать setContentView() или setView() .

Одна разница, которую я заметил, – это когда я использую setView() в AlertDialog , я вижу кнопки Positive & Negative. В моем подклассе AlertDialog , используя setContentView() я не получаю кнопки Positive & Negative.

Может ли кто-нибудь объяснить другие различия?

Благодарю.

Solutions Collecting From Web of "В чем разница между Dialog.setContentView (View) и AlertDialog.setView (View)"

Если я откажусь от него правильно, setContentView раздувает все диалоговое окно с вашим настраиваемым макетом. Название, значок, кнопки … ничего не остается. setView с другой стороны, устанавливает макет представления между кнопками и заголовком.

Просмотреть изображение

SetContentView – метод класса отца AlertDialog, это означает, что все диалоговые окна, а setView – метод AlertController, в представлении окон AlertDialog есть topPanel, contentPanel, buttonPanel.setView только устанавливает customView в contentpanel.

Кстати, вы также можете вызвать метод setView AlertDialogs, который, как представляется, также удаляет лишние «интервалы» вокруг представления.

Void setView (View view, int viewSpacingLeft, int viewSpacingTop, int viewSpacingRight, int viewSpacingBottom)

как это.

alertDialog.setView (MyView, 0,0,0,0);