theme - custom dialog android



странное поведение при применении темы к диалогу под api 21 (1)

Убедитесь, что вам нужно import android.support.v7.app.AlertDialog .

Затем создайте этот способ

AlertDialog.Builder builder =
       new AlertDialog.Builder(this, R.style.DialogStyle);
            builder.setTitle("Title");
            builder.setMessage("Abc ...");
            builder.setPositiveButton("OK", null);
            builder.setNegativeButton("Cancel", null);
            builder.show();

и Создать стиль в styles.xml

<style name="DialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert">
        <item name="colorAccent">#FFCC00</item>
        <item name="android:textColorPrimary">#FFFFFF</item>
        <item name="android:background">#5fa3d0</item>
    </style>

На этот вопрос уже есть ответ:

Я использую тему "Theme.AppCompat.Light.NoActionBar" в своем приложении. Я хочу, чтобы некоторые из моих диалогов применяли темную тему AppCompat.

Итак, я создал стиль для диалога

 <style name="MyDialogStyle" parent="Theme.AppCompat.Dialog">

 </style>

(такая же проблема, когда родительский «Theme.AppCompat.Dialog.Alert») один в xml-файле без ограничения версии и тот же стиль в XML-файле с версией api 21 constrain. для вызова диалога я использовал эту функцию:

 public void showSimplestDialog(View view) {
    AlertDialog.Builder builder = new AlertDialog.Builder(this,R.style.MyDialogStyle);
    AlertDialog alertDialog = builder.setTitle("title")
            .setMessage("message ")
            .create();
    alertDialog.show();
}

результат в api 21+ выглядит отлично

но в api 17 у меня есть дубликат фона, который я не могу избавиться (даже когда я пытаюсь применить пользовательский вид к диалоговому окну с builder.setView (MyView)





themes