Подтвердить что ты не робот

Как установить пользовательский шрифт для диалогового окна предупреждения в android?

В моем приложении Android появится диалоговое окно с предупреждением после нажатия кнопки. Я хочу установить специальный шрифт для предупреждения. Я искал в Интернете и нашел несколько уроков и вопросов по этому вопросу, но ни один из них не работал у меня.

Как изменить шрифт?

Спасибо

4b9b3361

Ответ 1

Для этого вы используете построитель предупреждений для создания своего предупреждения. Затем вы получите TextView из этого предупреждения, а затем установите шрифт для предупреждения.

AlertDialog dialog = new AlertDialog.Builder(this).setMessage("Hello world").show();
TextView textView = (TextView) dialog.findViewById(android.R.id.message);
Typeface face=Typeface.createFromAsset(getAssets(),"fonts/FONT"); 
textView.setTypeface(face); 

Ответ 2

Вышеуказанные ответы не помогли мне.

Я использовал следующий подход

// Initializing the alertDialog
AlertDialog alertDialog = new AlertDialog.Builder(QuizActivity.this).create();
alertDialog.setTitle("Warning");
alertDialog.setMessage("Are you sure you want to exit?");
alertDialog.show(); // This should be called before looking up for elements


// Getting the view elements
TextView textView = (TextView) alertDialog.getWindow().findViewById(android.R.id.message);
TextView alertTitle = (TextView) alertDialog.getWindow().findViewById(R.id.alertTitle);
Button button1 = (Button) alertDialog.getWindow().findViewById(android.R.id.button1);
Button button2 = (Button) alertDialog.getWindow().findViewById(android.R.id.button2);

// Setting font
textView.setTypeface(FontHelper.getFont(Fonts.MULI_REGULAR));
alertTitle.setTypeface(FontHelper.getFont(Fonts.MULI_REGULAR));
button1.setTypeface(FontHelper.getFont(Fonts.MULI_BOLD));
button2.setTypeface(FontHelper.getFont(Fonts.MULI_BOLD));

Протестировано на 7.1.1

ПРИМЕЧАНИЕ. Убедитесь, что вы получили элемент после отображения dialog. Без этого вы получите NullPointerException

Ответ 3

Вы можете определить свой собственный макет диалогового окна, которое вы хотите отобразить.

Здесь ссылка для этого

Создание пользовательского диалогового окна в Android

В макете вы можете определить TextViews с типом, который вы хотите. Вам нужно загрузить файлы otf для нужного шрифта. Имейте их в своих каталогах ресурсов. И установите это как TypeFace вашего TextView. И как установить TypeFace

Это может быть полезно

Как изменить шрифт в TextView?