Chcę wyświetlić okno dialogowe / wyskakujące okno z komunikatem dla użytkownika, który pokazuje „Czy na pewno chcesz usunąć ten wpis?” za pomocą jednego przycisku z napisem „Usuń”. Po Delete
dotknięciu powinien usunąć ten wpis, w przeciwnym razie nic.
Napisałem detektor kliknięć dla tych przycisków, ale jak wywołać okno dialogowe lub wyskakujące okienko i jego funkcjonalność?
android
android-dialog
UMAR-MOBITSOLUTIONS
źródło
źródło
Odpowiedzi:
Możesz użyć
AlertDialog
do tego i zbudować jeden, używając jegoBuilder
klasy. W poniższym przykładzie użyto domyślnego konstruktora, który pobiera tylko,Context
ponieważ okno dialogowe odziedziczy odpowiedni motyw z przekazanego kontekstu, ale jest też konstruktor, który pozwala określić konkretny zasób motywu jako drugi parametr, jeśli chcesz to zrobić więc.źródło
AlertDialog.Builder(this)
być zastąpione przezAlertDialog.Builder(className.this)
?Wypróbuj ten kod:
źródło
cancel()
i tak dalej.builder1.create()
konieczne, ponieważ wydaje się, że działa dobrze, gdy dzwoniszbuilder1.show()
bezpośrednio?Kod, który opublikował David Hedlund, dał mi błąd:
Jeśli otrzymujesz ten sam błąd, użyj poniższego kodu. To działa!!
źródło
create()
ashow()
ponieważshow()
już tworzy okno dialogowe z opisaną zawartością. Zgodnie z dokumentacjącreate()
tworzy AlertDialog z argumentami dostarczonymi do tego konstruktora. To nie Dialog.show () okno dialogowe. Umożliwia to użytkownikowi wykonanie dodatkowego przetwarzania przed wyświetleniem okna dialogowego. Użyj show (), jeśli nie masz żadnego innego przetwarzania do zrobienia i chcesz, aby to zostało utworzone i wyświetlone. Dlatego jest użyteczny tylkocreate()
wtedy, gdy planujesz później wyświetlić okno dialogowe i ładujesz jego zawartość z wyprzedzeniem.getApplicationContext()
naMyActivity.this
i zaczął działać.Po prostu prosty! Utwórz metodę okna dialogowego, coś takiego w dowolnym miejscu w klasie Java:
Teraz utwórz Layout XML
dialog_demo.xml
i stwórz swój interfejs użytkownika / projekt. Oto przykład, który utworzyłem do celów demonstracyjnych:Teraz możesz dzwonić
openDialog()
z dowolnego miejsca :) Oto zrzut ekranu powyższego kodu.Pamiętaj, że tekst i kolor są używane od
strings.xml
icolors.xml
. Możesz zdefiniować własne.źródło
AlertDialog, DatePickerDialog or TimePickerDialog
(z developer.android.com/guide/topics/ui/dialogs.html )Użyj AlertDialog.Builder :
Otrzymasz następujące dane wyjściowe.
Aby wyświetlić samouczek okna dialogowego alertu, użyj poniższego łącza.
Samouczek dialogowy alertów Androida
źródło
Obecnie lepiej jest używać DialogFragment zamiast bezpośredniego tworzenia AlertDialog.
źródło
Możesz użyć tego kodu:
źródło
dla mnie
źródło
źródło
źródło
Oto podstawowa próbka utworzenia okna dialogowego alertu :
źródło
To zdecydowanie pomoc dla ciebie. Wypróbuj ten kod: Po kliknięciu przycisku możesz umieścić jeden, dwa lub trzy przyciski z oknem dialogowym alertu ...
źródło
Utworzyłem okno dialogowe z pytaniem Osoby, czy chce zadzwonić do Osoby, czy nie.
źródło
możesz spróbować tego ....
Aby uzyskać więcej informacji, sprawdź ten link ...
źródło
Możesz utworzyć okno dialogowe za pomocą
AlertDialog.Builder
Spróbuj tego:
Aby zmienić kolor dodatnich i ujemnych przycisków okna dialogowego Alert, możesz napisać poniższe dwie linie po
alertDialog.show();
źródło
Wypróbuj ten kod
źródło
Kotlin
Jawa
źródło
źródło
Bądź ostrożny, jeśli chcesz zamknąć okno dialogowe - użyj
dialog.dismiss()
. W pierwszej próbie użyłemdismissDialog(0)
(którą prawdopodobnie skopiowałem z jakiegoś miejsca), która czasem działa. Używając obiektu system dostarcza dźwięk jak bezpieczniejszy wybór.źródło
Chciałbym dodać świetną odpowiedź Davida Hedlunda, dzieląc się bardziej dynamiczną metodą niż ta, którą opublikował, dzięki czemu można jej użyć, gdy masz negatywne działania do wykonania, a kiedy nie, mam nadzieję, że to pomoże.
źródło
możesz spróbować również w ten sposób, dostarczy ci dialogów stylu materiału
źródło
Zapoznaj się również z moim blogiem na temat dialogów w systemie Android, wszystkie szczegóły znajdziesz tutaj: http://www.fahmapps.com/2016/09/26/dialogs-in-android-part1/ .
źródło
Wykonaj tę statyczną metodę i używaj jej tam, gdzie chcesz.
źródło
Użyłem tego
AlertDialog
wonClick
metodzie przycisku :dialog.xml
źródło
Okno dialogowe alertu z edycją tekstu
źródło
Jest to sposób na utworzenie okna dialogowego Alert z pewną linią kodu.
źródło
Kod do usunięcia wpisu z listy
Wywołaj powyższą metodę po kliknięciu przycisku Usuń
źródło
Dzięki Anko (oficjalnej bibliotece twórców Kotlina) możesz z łatwością korzystać
lub bardziej złożony:
Aby zaimportować Anko:
źródło
Możesz utworzyć działanie i rozszerzyć AppCompatActivity. Następnie w Manifeście umieść następny styl:
Napompuj go za pomocą Buttons i TextViews
Następnie użyj tego jak okna dialogowego.
Na przykład w linearLayout wypełniam kolejne parametry:
źródło
Odbywa się to w kotlin
źródło