0%

Android UI 设计 日期控件DatePicker用法

DatePicker可以让用户选择时间,免去判断输入时间合法性,下图是效果: 点击按钮,会在标题栏上显示选择的时间。 下面一步一步来实现: main.xml:

<DatePicker 
        android:id="@+id/date_picker"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" />
<Button android:id="@+id/b1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Click Me"
        />

程序代码:

package com.pocketdigi;

import java.util.Calendar;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;

public class main extends Activity {
    /** Called when the activity is first created. */
    DatePicker dp;
    Button b1;
    Calendar c;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        dp=(DatePicker)findViewById(R.id.date_picker);
        dp.init(2010,7,27, null);
        //这里要注意,设置初始时间为2010年8月27日,而不是7月27日,
        //因为这里月份用0-11表示,没有12的,不设置默认显示系统日期
        //下面显示时月份加1道理相同
        b1=(Button)findViewById(R.id.b1); 
        c = Calendar.getInstance();   
        b1.setOnClickListener(bl);

    }
    private OnClickListener bl=new OnClickListener(){
        @Override
        public void onClick(View v) {   
         //下面是读取方法
           setTitle(String.valueOf(dp.getYear())+"年"+String.valueOf(dp.getMonth()+1)+"月"+String.valueOf(dp.getDayOfMonth())+"日");
        }  
        
    };
    
 }