web-dev-qa-db-ja.com

Androidにデフォルトのアラートダイアログを表示する方法

Androidガイドに示されているように、Androidで黒いテーマのダイアログをどのように取得しますか http://developer.Android.com/guide/topics/ui/dialogs.html

スクリーンショットを撮りました。 Alert Dialogを使用すると、左側にダイアログが表示され、右側にダイアログが表示されます。

enter image description here

15
Akshat Agarwal

res/values/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"/>
5
resource8218

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);

使用できるさまざまな定数とその値が here で示されています。ただし、API 14より前では、白い警告が表示されます。

-------------------------------------------------- --------------[〜#〜]更新[〜#〜]------- -------------------------------------------------

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

29
Steve Waring

Activityのテーマを変更したくない場合は、AlertDialogを拡張し、_Theme.Holo_をそのコンストラクターAlertDialog(Context context, int theme)に指定できます。

1
Nitin Sethi

DialogFragmentを使用してカスタマイズされたダイアログを実装する場合は、onCreate()メソッドでテーマを次のように設定します。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState)
    setStyle(DialogFragment.STYLE_NORMAL, Android.R.style.Theme_Holo_Dialog)
}
0
Zhao