学习Android的第十四天

目录

Android DatePicker 日期选择器

DatePicker 属性 和 事件

DatePicker 事件

获得 DatePicker 的值

Android TimePicker 时间选择器

TimePicker 属性

TimePicker 事件

获得 TimePicker 的值

Android CalendarView 日历视图

CalendarView 属性

CalendarView 事件

获得 CalendarView 的值


Android DatePicker 日期选择器

在Android中,DatePicker是一个用户界面组件,用于允许用户选择日期。它通常以对话框的形式出现,用户可以通过滚动选择年、月和日来选择所需的日期。

DatePicker 属性 和 事件

在Android中,DatePicker具有许多属性,可以用来自定义其外观和行为。以下是一些常用属性的说明:

  • android:calendarTextColor: 设置日历列表的文本颜色。
  • android:calendarViewShown: 设置是否显示日历视图。可选值为true或false。
  • android:datePickerMode: 设置DatePicker的组件外观。可选值有"spinner"和"calendar",默认为"calendar"。
  • android:dayOfWeekBackground: 设置顶部星期几的背景颜色。
  • android:dayOfWeekTextAppearance: 设置顶部星期几的文字颜色。
  • android:endYear: 设置结束年份。
  • android:firstDayOfWeek: 设置日历列表以星期几开头。
  • android:headerBackground: 设置整个头部的背景颜色。
  • android:headerDayOfMonthTextAppearance: 设置头部日期字体的颜色。
  • android:headerMonthTextAppearance: 设置头部月份的字体颜色。
  • android:headerYearTextAppearance: 设置头部年的字体颜色。
  • android:maxDate: 设置最大日期,以mm/dd/yyyy格式显示在日历视图中。
  • android:minDate: 设置最小日期,以mm/dd/yyyy格式显示在日历视图中。
  • android:spinnersShown: 设置是否显示spinner。可选值为true或false。
  • android:startYear: 设置第一年(内容)。
  • android:yearListItemTextAppearance: 设置列表的文本在列表中的外观。
  • android:yearListSelectorColor: 设置年份列表选择的颜色。

DatePicker 事件

DatePicker在日期值改变时会触发OnDateChangedListener事件。这个事件通常用于捕获用户选择的新日期,并执行相应的操作。

在Android中,OnDateChangedListener接口定义了一个回调方法onDateChanged(),该方法在用户改变DatePicker的日期时被调用。这个方法提供了几个参数:

  • DatePicker:触发了日期改变事件的DatePicker实例。
  • year:新选择的年份。
  • monthOfYear:新选择的月份,注意这里月份是从0开始的,即0代表一月,11代表十二月。
  • dayOfMonth:新选择的日期。

获得 DatePicker 的值

DatePicker本身并没有直接提供方法来获取其值。但是,可以通过获取其年、月、日的值,然后将它们组装成需要的形式。通常,可以使用Calendar类来帮助进行这些操作。

<?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:gravity="center"><DatePickerandroid:id="@+id/datePicker"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true" /><Buttonandroid:id="@+id/showDateButton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/datePicker"android:layout_centerHorizontal="true"android:layout_marginTop="20dp"android:text="显示所选日期" /></LinearLayout>
package com.example.myapplication;import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.DatePicker;import androidx.appcompat.app.AppCompatActivity;import java.util.Calendar;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);final DatePicker datePicker = findViewById(R.id.datePicker);Button showDateButton = findViewById(R.id.showDateButton);showDateButton.setOnClickListener(v -> {// 获取当前日期Calendar calendar = Calendar.getInstance();int year = datePicker.getYear();int month = datePicker.getMonth();int dayOfMonth = datePicker.getDayOfMonth();// 设置Calendar的日期为DatePicker选择的日期calendar.set(year, month, dayOfMonth);// 获取所选日期的年、月、日int selectedYear = calendar.get(Calendar.YEAR);int selectedMonth = calendar.get(Calendar.MONTH); // 月份从0开始计数,需要加1int selectedDayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);// 输出所选日期Log.d("DatePicker", "选定日期: " + selectedDayOfMonth + "/" + (selectedMonth + 1) + "/" + selectedYear);});}
}

Android TimePicker 时间选择器

在Android中,TimePicker是一个用户界面组件,用于允许用户选择时间。它可以显示为24小时制或12小时制(AM/PM)。

通常情况下,使用TimePickerDialog更为常见,因为它提供了一个方便的对话框来选择时间。

TimePicker 属性

在Android中,TimePicker有一个属性android:timePickerMode,可以用来设置TimePicker的外观。这个属性主要有两种取值:

  • clock:这是默认的外观,会显示一个时钟样式的TimePicker。
  • spinner:这种外观会显示为下拉菜单样式的TimePicker,用户可以从下拉菜单中选择小时和分钟。

TimePicker 事件

TimePicker组件在时间改变时会触发TimePicker.OnTimeChangedListener事件。这个事件通常用于捕获用户选择的新时间,并执行相应的操作。

在Android中,TimePicker.OnTimeChangedListener接口定义了一个回调方法onTimeChanged(),该方法在用户改变TimePicker的时间时被调用。这个方法提供了三个参数:

  • TimePicker:触发了时间改变事件的TimePicker实例。
  • hourOfDay:新选择的小时数,24小时制。
  • minute:新选择的分钟数。

获得 TimePicker 的值

与DatePicker类似,TimePicker也没有提供直接获取其值的方法。但是,可以通过调用getHour()和getMinute()方法分别获取所选的小时和分钟。

<?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:gravity="center"><TimePickerandroid:id="@+id/timePicker"android:layout_width="wrap_content"android:layout_height="wrap_content"android:timePickerMode="spinner"android:layout_centerInParent="true" /></LinearLayout>
package com.example.myapplication;import android.os.Bundle;
import android.util.Log;
import android.widget.TimePicker;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TimePicker timePicker = findViewById(R.id.timePicker);timePicker.setIs24HourView(true); // 设置为24小时制// 设置时间改变监听器timePicker.setOnTimeChangedListener((view, hourOfDay, minute) -> {// 当时间改变时调用此方法// 在这里你可以获取所选的小时和分钟,并执行你需要的操作Log.d("TimePicker", "选定的时间: " + hourOfDay + ":" + minute);});}
}

Android CalendarView 日历视图

在Android中,CalendarView是一个用于显示和选择日期的日历视图控件。通过CalendarView,用户可以浏览月份,并选择特定的日期。可以使用android:minDate和android:maxDate属性来设置CalendarView显示的时间范围。

CalendarView 属性

CalendarView 属性很多,我们只介绍几个主要的

CalendarView 事件

CalendarView在选择日期时会触发CalendarView.OnDateChangeListener事件。这个事件通常用于捕获用户选择的新日期,并执行相应的操作。

在Android中,CalendarView.OnDateChangeListener接口定义了一个回调方法onSelectedDayChange(),该方法在用户改变CalendarView选择的日期时被调用。这个方法提供了几个参数:

  • CalendarView:触发了日期改变事件的CalendarView实例。
  • year:新选择的年份。
  • month:新选择的月份,从0开始计数,即0代表一月,11代表十二月。
  • dayOfMonth:新选择的日期。

获得 CalendarView 的值

<?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:gravity="center"><CalendarViewandroid:id="@+id/calendarView"android:layout_width="match_parent"android:layout_height="wrap_content" /><TextViewandroid:id="@+id/selectedDateTextView"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="选定日期"android:textSize="20sp" /></LinearLayout>
package com.example.myapplication;import android.os.Bundle;
import android.util.Log;
import android.widget.CalendarView;
import android.widget.TextView;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {private TextView selectedDateTextView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);CalendarView calendarView = findViewById(R.id.calendarView);selectedDateTextView = findViewById(R.id.selectedDateTextView);calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {@Overridepublic void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {// 当日期改变时调用此方法String selectedDate = year + "-" + (month + 1) + "-" + dayOfMonth;selectedDateTextView.setText("选定日期: " + selectedDate);Log.d("CalendarView", "选定日期: " + selectedDate);}});}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687027.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux超详细笔记

文章目录 Linux学习笔记操作系统Linux初识Linux的诞生Linux内核Linux发行版 虚拟机VMware安装远程连接Linux系统FinalShellFinalShell连接Linux WSL配置UbuntuLinux常用命令1.入门2.ls命令cd命令3.pwd命令4.相对路径和绝对路径5.mkdir命令6.文件操作命令&#xff08;1&#xff…

vue打包优化,webpack的8大配置方案

vue-cli 生成的项目通常集成Webpack &#xff0c;在打包的时候&#xff0c;需要webpack来做一些事情。这里我们希望它可以压缩代码体积&#xff0c;提高运行效率。 文章目录 &#xff08;1&#xff09;代码压缩&#xff1a;&#xff08;2&#xff09;图片压缩&#xff1a;&…

[AIGC] Kafka 消费者的实现原理

在 Kafka 中&#xff0c;消费者通过订阅主题来消费数据。每个消费者都属于一个消费者组&#xff0c;消费者组中的多个消费者可以共同消费一个主题&#xff0c;实现分布式消费。每个消费者都会维护自己的偏移量&#xff0c;用于记录已经读取到的消息位置。消费者可以选择手动提交…

17.3.2.9 像素处理与内存处理之比较

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 通过第17.3.2.1节到第17.3.2.8节&#xff0c;相信读者对通过锁定内存来处理图像有了一定认识。与第17.3.1节相比较&#xff0c;可以…

代码随想录day28 Java版

134. 加油站 使用三个变量total、cur和start来记录总剩余油量、当前剩余油量和起始加油站的索引。在遍历加油站数组的过程中&#xff0c;不断更新cur为当前剩余油量&#xff0c;并根据cur的值判断是否需要更换起始加油站。 如果cur小于0&#xff0c;说明从当前起点到当前加油…

课时34:脚本交互_基础知识_子shell基础

2.1.2 子shell基础 学习目标 这一节&#xff0c;我们从 基础知识、简单实践、小结 三个方面来学习。 基础知识 场景 之前我们对于环境变量在多个shell环境中的应用进行了学习&#xff0c;那种操作量比较大。对于一些临时性的场景&#xff0c;我们在临时性的环境中&#xff…

程序的控制结构详解

程序的控制结构 结构化程序设计方法的基础 在计算机刚出现的早期&#xff0c;它的价格昂贵、内存很小、速度慢。程序员为了在很小的内存中解决大量的科学计算问题&#xff0c;并为了节省昂贵的CPU机时费&#xff0c;不得不使用巧妙的手段和技术&#xff0c;手工编写各种高效的…

目标检测算法之YOLOv5的应用实例(零售业库存管理、无人机航拍分析、工业自动化领域应用的详解)

1.YOLOv5在"零售业库存管理"领域的应用 在零售业库存管理中,YOLOv5可以帮助自动化商品识别和库存盘点过程。通过使用深度学习模型来实时识别货架上的商品,零售商可以更高效地管理库存,减少人工盘点的时间和成本。以下是一个使用YOLOv5进行商品识别的Python脚本示…

[office] Excel中函数进行计算两个日期参数差值的方法 #职场发展#学习方法#媒体

Excel中函数进行计算两个日期参数差值的方法 在excel使用中&#xff0c;如果想计算两个日期参数的差值&#xff0c;该用什么函数和如何使用呢?今天&#xff0c;小编就教大家在Excel中函数进行计算两个日期参数差值的方法。 Excel中函数进行计算两个日期参数差值的步骤 在excel…

javascript中的prototype;javascript中的原型链

文章目录 深入理解JavaScript原型链1. 什么是原型链&#xff1f;2. 原型链的结构3. 如何访问原型链&#xff1f;4. 示例演示原型链5. 原型链与继承6. 实际应用场景 深入理解JavaScript原型链 1. 什么是原型链&#xff1f; 在JavaScript中&#xff0c;每个对象都有一个原型&am…

【python】网络爬虫与信息提取--正则表达式

一、正则表达式 正则表达式是用来简洁表达一组字符串的表达式。是通用的字符串表达框架&#xff0c;简洁表达一组字符串的表达式&#xff0c;针对字符串表达“简洁”和“特征”思想的工具&#xff0c;判断某字符串的特征归属。 用处&#xff1a;表达文本类型的特征&#xff1b;…

永久禁止windows自动更新方法

文章目录 前言一、打开本地组策略编辑器二、禁用windows更新总结 前言 每次打开电脑&#xff0c;右下角就会弹出设备更新提示&#xff0c;看着令人烦恼&#xff0c;并且更新可能导致电脑设置发生改变甚至是卡顿&#xff0c;所以为了自己方便于是出了禁用电脑更新的办法&#x…

对账中心系统架构设计与实现的实践总结

随着数字化时代的到来&#xff0c;越来越多的企业开始使用对账中心系统来管理其财务交易。对于一个成功的对账中心系统&#xff0c;其架构设计和实现非常关键。本文将探讨对账中心系统架构设计与实现的重要性、关键原则和实施过程中需要考虑的要点&#xff0c;帮助企业构建强大…

Rust枚举类型详解

Rust是一门强类型的系统级编程语言&#xff0c;其枚举类型&#xff08;enum&#xff09;是一种强大的数据结构&#xff0c;用于表示一组可能的值。在本文中&#xff0c;我们将深入探讨Rust中枚举类型的使用&#xff0c;并以IpAddr和IpAddr1为例进行介绍。 IpAddr枚举 首先&am…

第13章 网络 Page747~749 asio核心类 ip::tcp::resolver

3&#xff0c; ip::tcp::resolver 如果新浪的IP地址变了&#xff0c;该怎么办呢? ip::tcp::resolver 可以帮我们用上www.sina.com.cn&#xff0c;因为它负责将人类可读的多种网址信息&#xff0c;一步 到位地解析成ip::tcp::socket建立连接所需要的ip::tcp::endpoint结构&…

C语言—函数

1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字29. /*1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字 */#include <stdio.h>//函数定义,返回类型为int int char_num(char c) {if(c > 0 && c < 9) //检查…

SQL32 截取出年龄(substring_index函数的用法)

代码 select substring_index(substring_index(profile,,,3),,,-1) as age ,count(device_id) from user_submit group by age知识点 substring_index(FIELD, sep, n)可以将字段FIELD按照sep分隔&#xff1a; (1).当n大于0时取第n个分隔符(n从1开始)之前的全部内容&#xff1…

关于umi ui图标未显示问题

使用ant design pro 时&#xff0c;安装了umi ui &#xff0c;安装命令&#xff1a; yarn add umijs/preset-ui -D但是启动项目后&#xff0c;发现没有显示umi ui的图标 找了许多解决方案&#xff0c;发现 umi的版本问题&#xff0c;由于我使用的ant design pro官网最新版本&a…

沐编程APP免费下载|获取免费项目以及技术教程

软件介绍 沐编程专注于分享IT编程相关知识的网站&#xff0c;主要分享毕业设计案例代码&#xff0c;课程设计案例代码&#xff0c;实用功能代码&#xff0c;bug解决方案&#xff0c;编程工具推荐以及编程课程分享等 下载方式 蓝奏云下载&#xff1a;https://wfr.lanzout.com…

python - 文件

In [1]: f open("/etc/passwd","r") #使用open函数打开文件In [2]: f Out[2]: <_io.TextIOWrapper name/etc/passwd moder encodingUTF-8>In [3]: type(f) Out[3]: _io.TextIOWrapperIn [5]: import os #打开文件前可以判断文件在不在In [6]: if …