gpt4 book ai didi

android - 自定义对话框中复选框控件的文本在某些Android设备上无法显示

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:32:04 24 4
gpt4 key购买 nike

我使用下面的代码创建并打开一个自定义对话框,它在android 4.2.2 中运行良好,但checkbox 控件的文本在android 2.3.6 中无法显示。

我发现在android 4.2.2中checkbox控件的文字是黑色的,dialog的BackgroundColor是白色的,所以没问题,但是在android 2.3.6中dialog的BackgroundColor是黑色的,所以不好。

我该怎么办?

sms_dialog.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="10dp" >

<CheckBox
android:id="@+id/chNoDisplayAgain"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="" />

</LinearLayout>

相关java代码:

 private void DisplayPrompt(final String key,final boolean isClose,String msg){
LayoutInflater li = LayoutInflater.from(this);
View promptsView = li.inflate(R.layout.sms_dialog, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
alertDialogBuilder.setView(promptsView);

alertDialogBuilder.setTitle(getString(R.string.TitleWarning));
alertDialogBuilder.setMessage(msg);
alertDialogBuilder.setCancelable(false);

final CheckBox myCheckBox=(CheckBox)promptsView.findViewById(R.id.chNoDisplayAgain);
myCheckBox.setText(getString(R.string.NoDisplayAgain));

alertDialogBuilder
.setPositiveButton(getString(R.string.BtnOK), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
SharedPreferences prefs =PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
if (prefs.contains(key)){
SharedPreferences.Editor editor =prefs.edit();
editor.putBoolean(key, !myCheckBox.isChecked());
editor.commit();

}
if (isClose){
finish();
}
}
});

AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}

最佳答案

我使用这行代码,效果很好。它将使对话框背景颜色与您在 11+ api 上的颜色相同

alertDialogBuilder.setInverseBackgroundForced(true);
alertDialogBuilder.create();

关于android - 自定义对话框中复选框控件的文本在某些Android设备上无法显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20417912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com