Android Studio 日期弹窗DatePickerDialog实例

功能

点击选择日期后,弹窗选择日期,选中日期按照指定格式写入文本框。

布局

文本框用来放格式化的日期,按钮用来弹窗选择日期。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="4dp">
    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="text"
        android:hint=""/>
    <Button
        android:id="@+id/buttonOk"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="选择日期"/>
</LinearLayout>

代码

点击按钮后,弹出日期选择框,选中日期后,将格式化的日期内容放入文本框。

注意月份是从0开始算的,所以要加1。

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取按钮
        Button buttonOk = findViewById(R.id.buttonOk);
        //设置按钮点击监听器
        buttonOk.setOnClickListener(new MyOnClickListener());
    }

    //定义按钮点击监听器
    class MyOnClickListener implements View.OnClickListener {
        //按钮点击
        @Override
        public void onClick(View view) {
            if (view.getId() == R.id.buttonOk) {//被点击的是确认按钮
                //弹窗
                DatePickerDialog pickerDialog = new DatePickerDialog(MainActivity.this,
                        new DatePickerDialog.OnDateSetListener() {
                            @Override
                            public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                                String date = String.format("%d-%d-%d", year, month+1, dayOfMonth);
                                EditText editText = findViewById(R.id.editText);
                                editText.setText(date);
                            }
                        }, 2018, 11, 11);
                pickerDialog.show();

            }
        }
    }
}

效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 点我我会动 设计师:上身试试 返回首页