如何在android中设置警报对话框的自定义字体?

在我的android应用程序中,点击一个button后会出现一个警告对话框。 我想为警报设置自定义字体 。 我search了网页,发现了一些关于这个主题的教程和问题,但是没有一个不适合我。

我怎样才能改变字体?

谢谢

Solutions Collecting From Web of "如何在android中设置警报对话框的自定义字体?"

要执行此操作,请使用警报生成器来构build警报。 然后从此警报中获取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); 

您可以定义自己想要显示的对话框的布局。

这是这个链接

在Android中创build一个自定义对话框

在你的布局中,你可以用你想要的typeFace定义TextViews。 您需要下载所需字体的otf文件。 让他们在您的资产目录。 并将其设置为TextView的TypeFace。 以及如何设置TypeFace

这可能会有所帮助

如何更改TextView上的字体?

上面的答案没有为我工作。

我用下面的方法

 // 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)); 

testing7.1.1

注意:确保在显示dialog后获取元素。 没有这个,你将得到NullPointerException