DatePickerを利用します。
実装例
プロジェクトの設定
Androidプロジェクトを新規作成します。
- Project name: SimpleDatePicker
- Build Target: Android 2.1-update1
- Application name: SimpleDatePicker
- Package name: iPentec.SimpleDatePicker
- Activity: SimpleDatePicker
UI
プロジェクト作成後main.xmlを編集します。
DatePickerを画面に配置します。
この状態で実行してみます。エミュレーターが起動し下図の画面が表示されます。
Eclipseに戻ります。DatePickerの下部にTextViewコントロールを配置します。
TextViewコントロールを選択し、右クリックしポップアップメニューを表示させ[Properties]メニューの[textSize]メニューを選択します。下図のダイアログボックスが表示されますので、テキストボックスに「24sp」を入力します。入力ができたら[OK]ボタンをクリックします。
main.xmlのソースコードを確認します。android:textSize="24sp" となっていることがわかります。
main.xmlのデザイン画面に切り替えるとTextViewの文字サイズが大きくなっていることも確認できます。
DatePickerとTextViewの間にボタンを配置します。ボタンのOnClickプロパティに"onClick_Button1"を設定します。
コード
コードを記述します。
package iPentec.SimpleDatePicker;
import android.app.Activity;
import android.os.Bundle;
import android.view.*;
import android.widget.*;
public class SimpleDatePicker extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public void onClick_Button1(View view){
DatePicker datePicker1 = (DatePicker)findViewById(R.id.datePicker1);
int year = datePicker1.getYear();
int month = datePicker1.getMonth();
int day = datePicker1.getDayOfMonth();
TextView textView1 = (TextView)findViewById(R.id.textView1);
textView1.setText(String.format("%d-%d-%d", year,month,day));
}
}
実行結果
アプリケーションを起動します。エミュレーターが起動し下図の画面が表示されます。
真ん中のスピンボックスの[-]ボタンをクリックして数値を減らしてみます。
ボタンをクリックします。ボタンをクリックするとTextViewにDatePickerで設定されている日時が画面に表示されます。が月の値がDatePickerで設定されている値より1少ないです。
上記の現象に対応するため、表示の際に月には1加算する処理を追加しました。コードは下記のとおりです。
public void onClick_Button1(View view){
DatePicker datePicker1 = (DatePicker)findViewById(R.id.datePicker1);
int year = datePicker1.getYear();
int month = datePicker1.getMonth();
int day = datePicker1.getDayOfMonth();
TextView textView1 = (TextView)findViewById(R.id.textView1);
textView1.setText(String.format("%d-%d-%d", year,month+1,day)); //←変更
}
実行します。ボタンを押すとDatePickerで選択した日付がTextViewに表示されます。
著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。
最終更新日: 2024-01-04
作成日: 2011-02-23