ile siyah metin üretir. Oluşturucudaki setView
komutunu kullanarak özel bir görünüm paneli ekliyorum.Android AlertDialog 10.</p> <p>benim iletişim inşa etmek <code>AlertDialog.Builder</code> kullanmak android API üzerinde siyah arka plan
Bu, üzerinde çalıştığım API'ların çoğunda çalışır. Stil, cihazdan cihaza bir miktar değişir, ancak bu, cihazın varsayılan ayarına uyması için istediğim şeydir.
Sorunum, API 10'da özel görünümümdeki herhangi bir metnin siyah arka planda siyah olarak gösterilmesidir.
AlertDialog.Builder.setMessage()
'u kullanarak eklediğim tüm metinler doğru görünüyor.
Metin görünümünü belirlemek için hangi sihirli özellik/stil iletişim kurucuyu kullanıyor?
Uygulamamın teması Theme.AppCompat.Light
.
public Dialog onCreateDialog(Bundle savedInstanceState) {
LayoutInflater inflater = getActivity().getLayoutInflater();
final View view = inflater.inflate(R.layout.fragment_status_dialog, null);
mStatusTextView = (TextView) view.findViewById(R.id.text_status);
mConnectedDeviceTextView = (TextView) view.findViewById(R.id.text_connected_device);
MainService.ServiceState state = null;
if (getArguments().containsKey(SERVICE_STATUS_ARG_KEY)) {
state = (MainService.ServiceState) getArguments().getSerializable(SERVICE_STATUS_ARG_KEY);
}
setState(state);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setView(view);
builder.setMessage("This will show up just fine.");
builder.setTitle(getString(R.string.status_title));
builder.setNegativeButton(R.string.dialog_back_button_text, null);
builder.setNeutralButton(R.string.dialog_connect_to_text, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
mListener.onDialogConnectTo();
}
});
// Create the AlertDialog object and return it
return builder.create();
}
İşte
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="18dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/status_starting"
android:id="@+id/text_status"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/status_connected_to_unknown"
android:paddingStart="4dp"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:id="@+id/text_connected_device"
android:layout_toRightOf="@+id/text_status"
android:layout_toEndOf="@+id/text_status"/>
</RelativeLayout>
Not, ben https://stackoverflow.com/a/24505312/2350083 denedim ama sorunu çözmedi benim fragment_status_dialog düzeni aşağıdaki gibidir:
İşte benim onCreateDialog yöntemdir.
'AlertDialog # setInverseBackgroundForced (true)' öğesini çağırmayı deneyin. –
Alex, bu çözüm benim için çalışıyor gibi görünüyor! Teşekkür ederim! API 10,13,15,19 – Jon
kullanarak cihazlar kadar şimdiye kadar test ettik Bunu duyduğuma sevindim! Bir cevap olarak ekledim. –