◆ DatePickerDialog
DatePickerDialogで選択した日付を画面に表示するサンプルです。
Androidプロジェクトの設定
プロジェクト名: DatePickerDialogTest1a ビルドターゲット: Android 2.1-update1 アプリケーション名: DatePickerDialogTest1a パッケージ名: jp.co.triware.samples.DatePickerDialogTest1a アクティビティーの作成: DatePickerDialogTest1aActivity 最小SDKバージョン: 7
DatePickerDialogTest1aActivity.java
package jp.co.triware.samples.DatePickerDialogTest1a;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
public class DatePickerDialogTest1aActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 表示エリア
final TextView tvDate = (TextView)findViewById(R.id.date_tv);
// 初期値設定(今日の日付)
Calendar cal = Calendar.getInstance();
int nYear = cal.get(Calendar.YEAR);
int nMonth = cal.get(Calendar.MONTH);
int nDay = cal.get(Calendar.DAY_OF_MONTH);
// DatePickerDialogの設定
final DatePickerDialog datePickerDialog = new DatePickerDialog(this,
new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
tvDate.setText(year + " / " + (monthOfYear + 1) + " / " + dayOfMonth);
}
}, nYear, nMonth, nDay);
// DatePickerDialogを呼び出すボタン
final Button btnDate = (Button)findViewById(R.id.date_btn);
btnDate.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
datePickerDialog.show();
}
});
}
}
DatePickerDiloag()の第4引数(37行目のnMonth)は月を指定しますが、1-12ではなく0-11を指定することに注意してください。
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/date_tv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:gravity="center"
android:textSize="40sp"
android:layout_weight="1"
/>
<Button
android:id="@+id/date_btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="日 付"
/>
</LinearLayout>
実行結果
システム設定の地域/言語が「日本語」の場合は、日付は年・月・日の並びになります。月の部分は、月の名前が入っていますので「1月」のような表示になります。「English (United States)」の場合はアメリカでの表示形式になりますので、月・日・年となり、月の省略形の「Jan」が入ります。



0 件のコメント:
コメントを投稿