1

アプリに次のウィジェットがあります。日付が設定されている場合は、これを曜日、月、月、年に置き換えることができます。例: 2012 年 11 月 7 日水曜日?

私はhtcでAndroid 4を実行していますが、Android 2.3.3で同じコードを実行すると、日付が希望どおりに表示されます。

ここに画像の説明を入力

.[アップデート1]

@Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
        case DATE_DIALOG_ID:
            // set date picker as current date

            return new DatePickerDialog(this,2 ,datePickerListener, year, month, day);
        }
        return null;
    }

.[アップデート 2]

@Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
        case DATE_DIALOG_ID:
            // set date picker as current date

            final DateFormat df = DateFormat.getDateInstance(0);
              final Calendar mCal = Calendar.getInstance();
               // Create a date picker dialog
               DatePickerDialog datePickerDialog = new DatePickerDialog(this,2,datePickerListener, year, month, day){
                   @Override
                   public void onDateChanged(DatePicker view, int year,int month, int day){
                       mCal.set(Calendar.YEAR, year);
                        mCal.set(Calendar.MONTH, month);
                        mCal.set(Calendar.DAY_OF_MONTH, day);
                       setTitle(df.format(mCal.getTime()));
                   }
               };
            return datePickerDialog;
            //return new DatePickerDialog(this,2 ,datePickerListener, year, month, day);
        }
        return null;
    }
4

2 に答える 2

0

はい。私は次のコードでそれをしました..あなたはあなたの要件に従って変更する必要があります。

dPicker.init((previouslyEnteredDate.getYear() + 1900),
                        previouslyEnteredDate.getMonth(),
                        previouslyEnteredDate.getDate(), null);
于 2012-11-07T09:42:27.863 に答える
0

今日が何であるかを思い出させるために現在の日付で初期化するだけの場合(または、少なくともユーザーがピッカーを操作するときに変更する必要がない場合)、一時変数を作成してsetTitle(CharSequence)メソッドを呼び出すことでそれを行うことができますその上に(DatePickerDialogextends があるためAlertDialog

例えば:

case DATE_DIALOG_ID:
      // set date picker as current date
      DatePickerDialog dpd = new DatePickerDialog(this, 2, datePickerListener,
                                                  year, month, day);
      dpd.setTitle("Today is: " + year + "-" + (month + 1) + "-" + day);
      return dpd;

わかりました、明らかに書式設定に少し怠け者になりましたが、基本的な考え方を理解していただければ幸いです。

ピッカーの日付を変更しているときにタイトルを更新したい場合、それはより複雑になりますが、それがあなたが目指していることだとは想像できません (文脈で曜日を彼らはそれを変更していますか?)。もしそうなら、私に知らせてください、そして私は詳しく説明します。

于 2012-11-10T03:12:23.907 に答える