Android时间对话框(转载,为了方便以后浏览)

讲一下日期时间对话框:

Android时间对话框(转载,为了方便以后浏览)我们先新建一个页面,代码、页面如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <!--注意getDate是方法名-->
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="弹出日期"
        android:onClick="getDate"
        />
    <!--注意getTime是方法名-->
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="弹出时间"
        android:onClick="getTime"
        />
</LinearLayout>

Android时间对话框(转载,为了方便以后浏览)

然后我们去java文件中编写弹出对话框代码

package com.example.android04_zhangkai;
 
import android.app.DatePickerDialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TimePicker;
import android.widget.Toast;
 
import java.net.DatagramPacket;
import java.util.Calendar;
 
/**
 * Created by Administrator on 2017/6/4 0004.
 */
 
public class TimeSuccessActivity extends AppCompatActivity{
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_time_success);
    }
    public void getDate(View view){
        Calendar c=Calendar.getInstance();
        int year=c.get(Calendar.YEAR);
        int month=c.get(Calendar.MONTH);
        int day=c.get(Calendar.DAY_OF_MONTH);
        DatePickerDialog dpd=new DatePickerDialog(this,new DatePickerDialog.OnDateSetListener(){
            @Override
            public void onDateSet(DatePicker view, int year, int month, int day) {
                Toast.makeText(TimeSuccessActivity.this,year+"年: "+(month+1)+"月: "+day+"日",Toast.LENGTH_SHORT).show();
            }
        },year,month,day);
        dpd.show();
    }
    public void getTime(View view){
        //获取当前系统时间
        Calendar c=Calendar.getInstance();
        int hour=c.get(Calendar.HOUR_OF_DAY);
        int minute=c.get(Calendar.MINUTE);
 
        //弹出时间对话框
        TimePickerDialog tpd=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                Log.i("text","时间:"+hourOfDay+":"+minute);
            }
        },hour,minute,true);
        tpd.show();
    }
}

注意,方法名应和xml文件中的方法名保持一致

效果:

弹出日期

Android时间对话框(转载,为了方便以后浏览)

 

 弹出时间:

Android时间对话框(转载,为了方便以后浏览)