• Android DatePicker(日期选择器)、TimePicker(时间选择器)、CalendarView(日历视图)- 简单应用


    示意图:

    layout布局文件:xml

    1. "1.0" encoding="utf-8"?>
    2. <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    3. xmlns:app="http://schemas.android.com/apk/res-auto"
    4. xmlns:tools="http://schemas.android.com/tools"
    5. android:layout_width="match_parent"
    6. android:layout_height="match_parent"
    7. tools:context=".MainActivity">
    8. <LinearLayout
    9. android:layout_width="match_parent"
    10. android:layout_height="wrap_content"
    11. android:orientation="vertical"
    12. >
    13. <TextView
    14. android:layout_width="wrap_content"
    15. android:layout_height="match_parent"
    16. android:text="DatePicker(日期选择器):"
    17. android:textSize="24sp"
    18. />
    19. <DatePicker
    20. android:id="@+id/btnDp"
    21. android:layout_width="match_parent"
    22. android:layout_height="wrap_content"
    23. />
    24. <DatePicker
    25. android:calendarTextColor="#ff00ff"
    26. android:layout_width="match_parent"
    27. android:layout_height="wrap_content"
    28. android:datePickerMode="spinner"
    29. android:headerBackground="#ff00ff00"
    30. />
    31. <TextView
    32. android:layout_width="match_parent"
    33. android:layout_height="wrap_content"
    34. android:text="TimePicker(时间选择器)"
    35. android:textSize="24sp"
    36. android:gravity="center"
    37. />
    38. <TimePicker
    39. android:id="@+id/btnTp"
    40. android:layout_width="match_parent"
    41. android:layout_height="wrap_content"/>
    42. <TextView
    43. android:layout_width="match_parent"
    44. android:layout_height="wrap_content"
    45. android:text="CalendarView(日历视图)"
    46. android:textSize="24sp"
    47. android:gravity="center"
    48. />
    49. <CalendarView
    50. android:id="@+id/btnCv"
    51. android:layout_width="match_parent"
    52. android:layout_height="wrap_content"
    53. />
    54. LinearLayout>
    55. ScrollView>

    MainActivity:

    1. package com.example.mydate;
    2. import androidx.annotation.NonNull;
    3. import androidx.appcompat.app.AppCompatActivity;
    4. import android.os.Bundle;
    5. import android.widget.CalendarView;
    6. import android.widget.DatePicker;
    7. import android.widget.TimePicker;
    8. import android.widget.Toast;
    9. public class MainActivity extends AppCompatActivity implements DatePicker.OnDateChangedListener,
    10. CalendarView.OnDateChangeListener,TimePicker.OnTimeChangedListener{
    11. //定义组件 都继承 FrameLayout 帧布局
    12. private DatePicker datePicker;
    13. private TimePicker timePicker;
    14. private CalendarView calendarView;
    15. @Override
    16. protected void onCreate(Bundle savedInstanceState) {
    17. super.onCreate(savedInstanceState);
    18. setContentView(R.layout.activity_main);
    19. datePicker = findViewById(R.id.btnDp);
    20. timePicker = findViewById(R.id.btnTp);
    21. calendarView = findViewById(R.id.btnCv);
    22. //绑定事件 日期
    23. datePicker.setOnDateChangedListener(this);
    24. //时间
    25. timePicker.setOnTimeChangedListener(this);
    26. //日期
    27. calendarView.setOnDateChangeListener(this);
    28. }
    29. @Override
    30. public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
    31. Toast.makeText(this,year+"-年-"+(monthOfYear+1)+"-月-"+dayOfMonth+"-日",Toast.LENGTH_SHORT).show();
    32. }
    33. @Override
    34. public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
    35. Toast.makeText(this,hourOfDay+"-小时"+minute+"-分钟-",Toast.LENGTH_SHORT).show();
    36. }
    37. @Override
    38. public void onSelectedDayChange(@NonNull CalendarView view, int year, int month, int dayOfMonth) {
    39. Toast.makeText(this,"您选择了"+year+"-年-"+(month+1)+"-月-"+dayOfMonth+"-日",Toast.LENGTH_SHORT).show();
    40. }
    41. }

  • 相关阅读:
    美国夏威夷州禁止某些产品中使用PFAS
    去了家新公司,技术总监不让用 IntelliJ IDEA想离职了
    Java学习中非常重要的数组排序算法——Java冒泡排序法
    Jenkins: 配置自动化发布脚本
    微信小程序-案例:本地生活-首页(不使用网络数据请求)
    Android Studio 新版本 Logcat 速查
    华为防火墙基础自学系列 | Hub Spoke IPsec VdPdNd
    Anaconda彻底卸载及重安装
    C/C++开发,opencv-ml库学习,随机森林(RTrees)应用
    如何在没有第三方.NET库源码的情况,调试第三库代码?
  • 原文地址:https://blog.csdn.net/jiayou2020527/article/details/134526387