Android第二十课;DataPicker与TimePicker

exercise

改变时间或者日期都会改变标题栏上的内容,使之与改变的日期时间相对应
用一个button实现页面跳转
layout下
新建一个datapicker.xml

  <DatePicker
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/datePicker"
        android:layout_weight="0.59" />

    <Button
        android:text="Button"
        android:background="#ffffff"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/button"
        android:layout_weight="0.59" />

新建一个timepicker.xml

<TimePicker
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/timePicker" />

Acitivity下
新建一个DataPicker.java

public class DataPicker extends AppCompatActivity {
    private DatePicker datePicker;
    private Calendar   calendar;
    private int year;
    private int month;
    private int day;
    private int hour;
    private int minute;

    private Button btn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.datapicker);

        //获取日历的一个对象
        calendar=Calendar.getInstance();
        //获取年月日时分秒的信息
        year=calendar.get(Calendar.YEAR);
        month=calendar.get(Calendar.MONTH)+1;//Calendar的一月是计为0月的,所以实际月份要加一
        day=calendar.get(Calendar.DAY_OF_MONTH);
        hour = calendar.get(Calendar.HOUR_OF_DAY);
        minute=calendar.get(Calendar.MINUTE);
        //把时间信息写在标题栏上
        setTitle(year+"-"+month+"-"+day+"-"+hour+":"+minute);

        datePicker = (DatePicker) findViewById(R.id.datePicker);
        //dataPicker初始化,输入的数据将是datapicker一打开最初始的数据,它获取month时会把数据加一,跟我们在跟Calendar获取month时加一时一样,所以设置一个减一
        datePicker.init(year, month-1, day, new DatePicker.OnDateChangedListener() {
            @Override
            //i=year;i1=monthofyear;i2=dayofmonth
            //因为i1(月份)返回时是以0为计数的,所以我们要加一
            public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
                setTitle(i+"-"+(i1+1)+"-"+i2);
            }
        });

        //DatePickerDialog
        new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
            //i代表year,i1代表monthOfyear,i2代表dayOfmonth
            @Override
            public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
                setTitle(i+"-"+(i1+1)+"-"+i2);
            }
        },year,month-1,day).show();//这一行的三个数据设置初始化的时间



        btn= (Button) findViewById(R.id.button);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent=new Intent(DataPicker.this, com.example.lengary_l.test14.TimePicker.class);
                startActivity(intent);
            }
        });

    }
}

新建一个TimePicker.java

public class TimePicker extends AppCompatActivity {
    private Calendar calendar;
    private int hour;
    private int minute;
    private android.widget.TimePicker timePicker;
    @Override
    protected void onCreate( Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.timepicker);

        calendar=Calendar.getInstance();
        hour = calendar.get(Calendar.HOUR_OF_DAY);
        minute=calendar.get(Calendar.MINUTE);  
        timePicker = (android.widget.TimePicker) findViewById(R.id.timePicker);
        timePicker.setOnTimeChangedListener(new android.widget.TimePicker.OnTimeChangedListener() {
            //i代表hourOfday i1代表minute
            @Override
            public void onTimeChanged(android.widget.TimePicker timePicker, int i, int i1) {
                setTitle(i+":"+i1);
            }
        });
        //TimePickerDialog
        new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
            //i代表hourOfday i1代表minute
            @Override
            public void onTimeSet(android.widget.TimePicker timePicker, int i, int i1) {

            }
        },hour,minute,true).show();//前两个设置初始时间,最后一个设置是否24小时显示
    }
}

mainifest下

<activity android:name=".DataPicker">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".TimePicker">

        </activity>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值