如何设置对话框按钮文本的字体大小
2022-09-03 03:20:37
我有一个Android应用程序,它使用一些自定义对话框,这些对话框是从XML布局中膨胀出来的。对话框视图的内容来自 XML 布局,但实际的正按钮和负按钮是通过调用生成器的 setPositiveButton 和 setNegativeButton 方法来添加的,因此我无法控制(或者至少不知道如何控制)按钮本身的样式。
请参阅下面的 onCreateDialog 方法,该方法来自我的 LoginConfirmationDialog.java扩展 DialogFragment 的文件。它基本上弹出一个非常简单的对话框,要求确认谁正在登录(即“你是Joe Schmoe吗?”,带有“是”和“否”按钮)。
在这种情况下,XML 布局只有一个 TextView,为了简化此操作(因为用户将是具有大块脏手指的建筑工人,需要大文本和大按钮),我将 TextView 的字体变得非常大。这两个按钮的文本字体要小得多,并且由于它们不是我的布局的一部分,并且是使用setPositiveButton和setNegativeButton方法添加的,所以我如何控制字体大小?
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Bundle args = this.getArguments();
String empName = args.getString("empName");
// Use the Builder class for convenient dialog construction
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_login_confirmation, null);
TextView message = (TextView)view.findViewById(R.id.txtLoginConfirmationMessage);
message.setText("Are you " + empName + "?");
builder.setView(view);
builder.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
mListener.onEmpConfirmPositiveClick(LoginConfirmationDialog.this);
}
});
builder.setNegativeButton("No",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
mListener.onEmpConfirmNegativeClick(LoginConfirmationDialog.this);
}
});
// Create the AlertDialog object and return it
return builder.create();
}