4

DatePicker ダイアログの色を変更したい。ダイアログを次のようにロードします

@SuppressLint("NewApi")
public static class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {

       @SuppressLint("NewApi")
    @Override
       public Dialog onCreateDialog(Bundle savedInstanceState) {
            // Use the current date as the default date in the picker
            final Calendar c = Calendar.getInstance();
            int year = c.get(Calendar.YEAR);
            int month = c.get(Calendar.MONTH);
            int day = c.get(Calendar.DAY_OF_MONTH);

            // Create a new instance of DatePickerDialog and return it
            return new DatePickerDialog(getActivity(), this, year, month, day);
      }

      public void onDateSet(DatePicker view, int year, int month, int day) {
           // Do something with the date chosen by the user


      }


}

@SuppressLint("NewApi")
public void showDatePickerDialog(View v) {
    DialogFragment newFragment = new DatePickerFragment();
    newFragment.show(getFragmentManager(), "datePicker");//show(getSupportFragmentManager(), "datePicker");
}

ダイアログをロードすると、白い背景になります。2 番目の図のように表示色を変更するにはどうすればよいですか? ありがとうここに画像の説明を入力ここに画像の説明を入力

4

2 に答える 2

6

クエリに従って、カスタム ダイアログ テーマを作成し、バージョンcustom_theme.xmlに従って設定する必要がありますAPI

まず、次のように値に themes.xml を追加します。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MyAppTheme" parent="@android:style/Theme.Light.NoTitleBar">
        <!-- Any customizations for your app running on pre-3.0 devices here -->
    </style>
</resources> 

次に、res ディレクトリに「values-v11」(Android 3.0+) という名前のディレクトリを作成し、themes.xml を次のように配置します。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MyAppTheme" parent="@android:style/Theme.Holo.Light">
        <!-- Any customizations for your app running on 3.0+ devices here -->
    </style>
</resources>

最後に、res ディレクトリに「values-v14」(Android 4.0 以降) という名前のディレクトリを作成し、themes.xml を作成します。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MyAppTheme" parent="@android:style/Theme.DeviceDefault.Light.NoActionBar">
        <!-- Any customizations for your app running on 4.0+ devices here -->
    </style>
</resources>  

詳細については、リンクをチェックしてフォローしてください。

彼らから何らかのアイデアを得て、問題を解決できることを願っています。

幸運を。

于 2013-05-04T10:47:18.020 に答える