今天主要学习了昨天还没有学习完的Date & Time组件的知识。

首先是DatePicker(日期选择器)

        android:calendarTextColor : 日历列表的文本的颜色
android:calendarViewShown:是否显示日历视图
android:datePickerMode:组件外观,可选值:spinner,calendar 前者效果如下,默认效果是后者
android:dayOfWeekBackground:顶部星期几的背景颜色
android:dayOfWeekTextAppearance:顶部星期几的文字颜色
android:endYear:去年(内容)比如2010
android:firstDayOfWeek:设置日历列表以星期几开头
android:headerBackground:整个头部的背景颜色
android:headerDayOfMonthTextAppearance:头部日期字体的颜色
android:headerMonthTextAppearance:头部月份的字体颜色
android:headerYearTextAppearance:头部年的字体颜色
android:maxDate:最大日期显示在这个日历视图mm / dd / yyyy格式
android:minDate:最小日期显示在这个日历视图mm / dd / yyyy格式
android:spinnersShown:是否显示spinner
android:startYear:设置第一年(内容),比如19940年
android:yearListItemTextAppearance:列表的文本出现在列表中。
android:yearListSelectorColor:年列表选择的颜色

实现代码如下:

public class MainActivity extends AppCompatActivity implements DatePicker.OnDateChangedListener{

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DatePicker dp_test = (DatePicker) findViewById(R.id.dp_test);
Calendar calendar = Calendar.getInstance();
int year=calendar.get(Calendar.YEAR);
int monthOfYear=calendar.get(Calendar.MONTH);
int dayOfMonth=calendar.get(Calendar.DAY_OF_MONTH);
dp_test.init(year,monthOfYear,dayOfMonth,this);
} @Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Toast.makeText(MainActivity.this,"您选择的日期是:"+year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日!",Toast.LENGTH_SHORT).show();
}
}

然后是TimePicker(时间选择器)

我们发现官方给我们提供的属性只有一个: android:timePickerMode:组件外观,同样可选值为:spinner和clock(默认) 前者是旧版本的TimePicker~ 而他对应的监听事件是:TimePicker.OnTimeChangedListener

实现代码如下:

ublic class MainActivity extends AppCompatActivity{

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TimePicker tp_test = (TimePicker) findViewById(R.id.tp_test);
tp_test.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
Toast.makeText(MainActivity.this,"您选择的时间是:"+hourOfDay+"时"+minute+"分!",Toast.LENGTH_SHORT).show();
}
});
} }

最后是CalendarView(日历视图)

有一些基本属性:

  • android:firstDayOfWeek:设置一个星期的第一天
  • android:maxDate :最大的日期显示在这个日历视图mm / dd / yyyy格式
  • android:minDate:最小的日期显示在这个日历视图mm / dd / yyyy格式
  • android:weekDayTextAppearance:工作日的文本出现在日历标题缩写

实现代码如下:

public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
CalendarView cv_test = (CalendarView) findViewById(R.id.cv_test);
cv_test.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
Toast.makeText(MainActivity.this,"您选择的时间是:"+ year + "年" + month + "月" + dayOfMonth + "日",Toast.LENGTH_SHORT).show();
}
});
}
}

02-08Android学习进度报告八的更多相关文章

  1. 本周java 学习进度报告

    本周java 学习进度报告 本周对我的感触很深,因为这是我初学java 语言的第一周,我认识到java 和c语言是有很多的不同之处和相同之处.我这几天几乎是在研究java 基础入门知识,而并没有太多的 ...

  2. 02-01 Android学习进度报告一

    前两天,刚刚安装好有关Android开发有关的软件并配好了环境,有一些体会想要发表. 首先我了解到有一款专门用于Android开发的软件,叫做Android Studio ,是一个IDE集成软件 于是 ...

  3. 02-05Android学习进度报告五

    今天主要学习了关于Android 开发的关于进度条和拖动条的知识. 主要学习了一些关于进度条的基本属性: android:max:进度条的最大值 android:progress:进度条已完成进度值 ...

  4. 02-16Android学习进度报告十六

    今天主要学习了GridView(网格视图)的基本使用和一些基本概念. 下面是GridView中的一些属性: android:columnWidth:设置列的宽度 android:gravity:组件对 ...

  5. 02-15Android学习进度报告十五

    今天学习了关于ListView Item多布局的实现.感觉有点困难. 何为ListView Item多布局,打个比方,QQ这种聊天列表 代码示例如下: public class MutiLayoutA ...

  6. 02-14Android学习进度报告十四

    今天我学习了关于构建一个可复用的自定义BaseAdapter的知识. 首先将Entity设置成泛型 代码示例: public class MyAdapter<T> extends Base ...

  7. 02-13Android学习进度报告十三

    今天我学习了ListView之checkbox错位问题解决.感觉还是很麻烦的. 好的存储这个Checkbox的方法有很多,你可以放到一个HashMap<Integer, Boolean>中 ...

  8. 02-12Android学习进度报告十二

    今天学习了ListView的焦点问题,基本了解了ListView的使用内容. 首先可以为抢占了控件的组件设置:android:focusable="false" 只需为抢占了Lis ...

  9. 02-11Android学习进度报告十一

    今天我学习了BaseAdapter优化的知识,主要是View方面的优化. 首先是复用复用ConvertView 代码示例: @Override public View getView(int posi ...

随机推荐

  1. SVN代码迁移到GITlab

    ==================================================================================================== ...

  2. Docker配置阿里云镜像源

    Docker默认拉取镜像是从这里拉取(https://hub.docker.com/),拉取的速度让人...,所以是配置国内镜像源,拉取速度十分惊人 一.版本要求 Docker版本:1.10以上 二. ...

  3. office自签名证书

    在 Office安装目录,找到 SELFCERT 文件,双击打开填写名称,生成

  4. 配置Nexus Tacacs管理

    1.设备拓扑: N7K(mgmt0)----VMnet1-----ACS5.2 2.设备配置:2.1.基础配置第一部分:N7Kinterface mgmt0 vrf member management ...

  5. AMD R7 2700X 安装虚拟机

    自己组装的台式机,选用的是微星X470主板,该主板默认的虚拟化技术是关闭的,在bios中也不太容易找到,具体方法如下. [开机或重启]--[按住DEL进入BIOS]--[高级模式F7]--[选择OC] ...

  6. 分享Linux系统快速入门法

    相信看到这篇文章的你一定是想要学习Linux,或者已经在学习Linux的人了,那我们就可以一起探讨一下,学习Linux如何快速入门呢? 首先,希望大家弄清楚自己为什么要学习Linux,有的人是因为兴趣 ...

  7. jQuery中$("input")与$(":input")的区别

    $("input")表示获取页面所有的input元素 $(":input")选取表单中所有的input,select 和 button元素

  8. Linux - 终端terminal进入交互环境的快捷键

    1. 上一页 ctrl + b 2. 下一页 空格 / ctrl + f 3. 上半页 ctrl + u 4. 下半页 ctrl + d 5. 上一行 k 6. 下一行 j 7. 向上查找 ?key ...

  9. 获取input type=radio属性的value值

    个人代码1: <div class="form-group" style="width: 250px;margin:0 auto;"> <la ...

  10. 【代码审计】VAuditDemo 重装漏洞

    一.源码安装漏洞介绍 一般在PHP源码程序都有一个初始安装的功能,如果相关代码没有对参数进行严格过滤,可能会导致攻击者访问安装页面(install.php)或构造数据包,对网站进行重新安装,从而危害网 ...