我正在使用自定义适配器创建一个简单的DialogFragment,但奇怪的是,当对话框显示时,文本显示为白色。
class MyDialog extends DialogFragment {
ListView listView;
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
ArrayAdapter<Service> adapter = new MyAdaper(getContext(), items);
TextView title = new TextView(getContext());
title.setText("Hello");
title.setGravity(Gravity.CENTER);
title.setTextSize(18);
title.setTextColor(Color.BLACK);
builder.setCustomTitle(title);
builder.setAdapter(adapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
return builder.create();
}
在适配器中充气的布局xml非常简单,只有一个TextView(我没有指定任何颜色,但是当我使用TextView而不指定颜色时,我希望它是黑色的,因为我的应用程序的其余部分)
我尝试过使用
AlertDialog.Builder(getActivity(), R.style.MyTheme);
但即使我在MyThem中指定b black textColor,Dialog仍会显示白色文字
我错过了什么?
答案 0 :(得分:1)
看看你可以为对话框创建样式。 例如:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(DialogFragment.STYLE_NORMAL, R.style.cust_dialog);
}
将其设置为onCreate
divideRoundAndPrintNumber
答案 1 :(得分:1)
<item name="android:textColorPrimary">@color/your desired color</item>
您的Alerts对话框样式的styles.xml文件中的这一行代码将有助于更改AlertDialogBox中消息正文的字体颜色。
答案 2 :(得分:0)
试试builder.setMessage(R.id.<yours id-name of TextView>);
但必须在XML代码中定义TextView的颜色。