Как получить предупреждение по умолчанию Диалоговое окно на Android имеет черную тему
Как вы получаете черный тематический диалог в андроиде, как показано на руководстве по android http://developer.android.com/guide/topics/ui/dialogs.html
Я снял снимок экрана. Всякий раз, когда я использую Alert Dialog, я получаю диалог слева, я хочу тот, который находится справа.
![enter image description here]()
Ответы
Ответ 1
RES/значения/styles.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="default_activity_theme" parent="@android:style/Theme.Holo"/>
</resources>
AndroidManifest.xml
<activity android:name=".ActivityMain"
android:theme="@style/default_activity_theme"/>
Ответ 2
Это просто для API 11 и далее:
AlertDialog.Builder alert = new AlertDialog.Builder(context, AlertDialog.THEME_DEVICE_DEFAULT_DARK);
Поле THEME_DEVICE_DEFAULT_DARK
было добавлено в API 14, поэтому, если вы планируете таргетинг до этого времени, просто используйте числовое значение, таким образом:
AlertDialog.Builder alert = new AlertDialog.Builder(context, 4);
Различные константы, которые вы можете использовать, и их значения показаны здесь. В pre API 14 вы все равно получите белый сигнал.
----------------------------------------------- ----------------- UPDATE ------------------------- -------------------------------
AlertDialog.THEME_DEVICE_DEFAULT_DARK
обесценивается,
Ниже приведен обновленный код:
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this, android.R.style.Theme_DeviceDefault_Light_Dialog_Alert);
Вместо этого вы можете выбрать разные темы android.R.style.Theme_DeviceDefault_Light_Dialog_Alert
Ответ 3
Если вы не хотите изменять тему Activity
, вы можете расширить AlertDialog
и предоставить Theme.Holo
в своем конструкторе: AlertDialog(Context context, int theme)
.
Ответ 4
В случае использования DialogFragment
для реализации настраиваемого диалога задайте тему в методе onCreate()
следующим образом:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setStyle(DialogFragment.STYLE_NORMAL, android.R.style.Theme_Holo_Dialog)
}