Czy w oknie dialogowym alertu systemu Android można umieścić tytuł wielowierszowy? Próbowałem kilka rozwiązań tutaj opublikowanych, ale żaden nie działał dla mnie. Zawsze kończy się tytułem z 3 kropkami (...) napisów dla tytułu. Każdy przykładowy kod lub przykład dotyczący tego samego byłby bardzo ceniony.Jak zbudować okno alertu z tytułem wielowierszowym?
Odpowiedz
Jeśli używasz powiadomienie okno następnie tytuł może zawierać maksymalnie 2 Linia, w przeciwnym wypadku trzeba iść z niestandardowym Dialog.
Próbowałem z 3 liniami napisów tytułowych mogłem wyświetlać tylko 2, a trzeci ciąg nie był wyświetlany. – Manju
Ta odpowiedź jest niepoprawna i nie powinna być akceptowaną odpowiedzią. –
ten sposób ustawić tytuł
AlertDialog.Builder builder = new AlertDialog.Builder(Class name.this);
builder.setTitle("Welcome to App,\n There are no App.\n Add a new data.");
Myślę, że nie możesz mieć więcej niż 2 linie na pasku tytułu, spróbowałem twojej próbki i udało mi się zdobyć tytuł na 2 linie i brakowało trzeciej linii. Co jeśli pierwszy ciąg ma więcej niż 30 znaków? – Manju
Trzeba użyć builder.setCustomTitle():
AlertDialog.Builder builder = new AlertDialog.Builder(context);
TextView textView = new TextView(context);
textView.setText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur " +
"tincidunt condimentum tristique. Vestibulum ante ante, pretium porttitor " +
"iaculis vitae, congue ut sem. Curabitur ac feugiat ligula. Nulla " +
"tincidunt est eu sapien iaculis rhoncus. Mauris eu risus sed justo " +
"pharetra semper faucibus vel velit.");
builder.setCustomTitle(textView);
Dokumentacja jest tutaj: AlertDialog.builder
'setCustomTitle()' nie jest metodą 'AlertDialog.Builder'. –
Przepraszam, przepraszam, masz rację. 'setCustomTitle (String)' nie istnieje, ale 'setCustomTitle (View)', jak użyłeś, robi. –
Tak, działało idealnie. Dzięki!! –
Faktycznie "correct" odpowiedzieć tu jest nie tak. Okazuje się, że możesz ustawić maksymalne linie na więcej niż 2 w AlertDialog. Oto przykład:
AlertDialog closePlayerDialog;
.........
Builder builder = new AlertDialog.Builder(this);
builder.setMessage(getString(R.string.AskToClosePlayer))
.setPositiveButton(R.string.Yes, dialogClickListener)
.setNeutralButton(R.string.NoJustCloseApp, dialogClickListener)
.setNegativeButton(R.string.NoContinue, dialogClickListener);
closePlayerDialog = builder.create();
closePlayerDialog.setOnShowListener(new DialogInterface.OnShowListener() {
public void onShow(DialogInterface dialog) {
float textSize = 12.0f;
Button positive = closePlayerDialog.getButton(AlertDialog.BUTTON_POSITIVE);
positive.setTextSize(TypedValue.COMPLEX_UNIT_DIP, textSize);
positive.setMaxLines(3);
Button neutral = closePlayerDialog.getButton(AlertDialog.BUTTON_NEUTRAL);
neutral.setTextSize(TypedValue.COMPLEX_UNIT_DIP, textSize);
neutral.setMaxLines(3);
Button negative = closePlayerDialog.getButton(AlertDialog.BUTTON_NEGATIVE);
negative.setTextSize(TypedValue.COMPLEX_UNIT_DIP, textSize);
negative.setMaxLines(3);
}
});
closePlayerDialog.setCancelable(false);
closePlayerDialog.show();
Zasadniczo edycję komponentów AlertDialog za onShow
, wykorzystujące DialogInterface.onShowListener
.
Nie pokazałeś, jak zmienić liczbę linii tytułu, ale przycisków. Nie ma 'dialog.getTitleBar' lub podobnego? –
@ LuisA.Florit Właściwie masz rację Luis. W takim przypadku możesz usunąć domyślny pasek tytułu, dokładnie tak, jak chcesz, a następnie umieścić własny niestandardowy widok tekstowy u góry niestandardowego układu. Wiersz, od którego chcesz usunąć istniejący pasek tytułu, to: dialog.requestWindowFeature (Window.FEATURE_NO_TITLE); – Radu
- 1. WebDriver odrzuca okno alertu
- 2. Okno dialogowe alertu WP7
- 3. Jak wyświetlić okno alertu w PHP?
- 4. Qt - Jak zbudować okno z wieloma zakładkami?
- 5. Jak wyświetlić okno alertu z Xamarin.Forms do sprawdzania poprawności?
- 6. FindWindow z częściowo znanym tytułem
- 7. Pokaż okno dialogowe alertu w rozszerzeniu chrome
- 8. Nowe okno alertu w nowym Chrome
- 9. Okno alertu w moim dodatku firefox
- 10. ZwijanieToolbarLayout z tytułem wieloliniowym
- 11. jak wyświetlić okno alertu po pomyślnym wstawieniu przy użyciu C#
- 12. Utwórz obramowanie JPanel z tytułem, tak jak w Firefox
- 13. Kłopoty z tytułem czynności Język
- 14. Okno dialogowe alertu Appcompat Tło przycisku czynności W stanie wciśniętym
- 15. Ag-Grid - Wiersz z tekstem wielowierszowym
- 16. Interfejs jest blaknący, ale okno dialogowe alertu nie jest wyświetlane.
- 17. Odrzucanie konstruktora okna dialogowego z alertu
- 18. Jak korzystać z interpolacji String w ciągu wielowierszowym Groovy?
- 19. Wyświetlanie alertu od delegata aplikacji przed wyświetleniem alertu z viewDidload
- 20. Nagłówek alertu stylu SO
- 21. Utwórz tytułową ramkę z tytułem jako JCheckBox
- 22. Zarys html5 z tytułem i tekstem
- 23. Dodaj ikonę z tytułem w CollapsingToolbarLayout
- 24. UIButton z wieloliniowym tytułem Etykieta w InterfaceBuilder
- 25. PDF w elemencie iframe z tytułem "Anonimowy"
- 26. Wyświetl komunikat alertu z viewDidLoad
- 27. Niestandardowe okno dialogowe z RecyclerView
- 28. CSS - Jak dodać kropkę między tytułem nawigacji
- 29. Jak zbudować aplikację z TypeScript?
- 30. Jak zbudować x64 z monodevelop?
Zapoznaj się z moją odpowiedzią i zastanów się, czy jest ona poprawna. – Radu
proszę rozważyć moją odpowiedź, denerwujące jest wprowadzanie w błąd "poprawnych" odpowiedzi na SO. – Radu