android中timepicker 常用属性,Android中实现日期时间选择器(DatePicker和TimePicker)
利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器。
Dialog的Content布局文件(date_time_dialog.xml):
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="10dip" >
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:text="请选择日期"
android:textColor="#FFFFFF"
android:textSize="16sp" />
android:id="@+id/date_picker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dip" />
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:singleLine="true"
android:text="请选择时间"
android:textColor="#FFFFFF"
android:textSize="16sp" />
android:id="@+id/time_picker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dip" />
代码中的实现:
package com.easipass.test;
import java.util.Calendar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.text.InputType;
import android.view.MotionEvent;
import android.view.View;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TimePicker;
/**
* 功能描述:实现日期时间选择器
*
* @author android_ls
*/
public class DateTimeActivity extends Activity implements View.OnTouchListener {
private EditText etStartTime;
private EditText etEndTime;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
etStartTime = (EditText) this.findViewById(R.id.et_start_time);
etEndTime = (EditText) this.findViewById(R.id.et_end_time);
etStartTime.setOnTouchListener(this);
etEndTime.setOnTouchListener(this);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
View view = View.inflate(this, R.layout.date_time_dialog, null);
final DatePicker datePicker = (DatePicker) view.findViewById(R.id.date_picker);
final TimePicker timePicker = (android.widget.TimePicker) view.findViewById(R.id.time_picker);
builder.setView(view);
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
datePicker.init(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), null);
timePicker.setIs24HourView(true);
timePicker.setCurrentHour(cal.get(Calendar.HOUR_OF_DAY));
timePicker.setCurrentMinute(Calendar.MINUTE);
if (v.getId() == R.id.et_start_time) {
final int inType = etStartTime.getInputType();
etStartTime.setInputType(InputType.TYPE_NULL);
etStartTime.onTouchEvent(event);
etStartTime.setInputType(inType);
etStartTime.setSelection(etStartTime.getText().length());
builder.setTitle("选取起始时间");
builder.setPositiveButton("确 定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
StringBuffer sb = new StringBuffer();
sb.append(String.format("%d-%02d-%02d",
datePicker.getYear(),
datePicker.getMonth() + 1,
datePicker.getDayOfMonth()));
sb.append(" ");
sb.append(timePicker.getCurrentHour())
.append(":").append(timePicker.getCurrentMinute());
etStartTime.setText(sb);
etEndTime.requestFocus();
dialog.cancel();
}
});
} else if (v.getId() == R.id.et_end_time) {
int inType = etEndTime.getInputType();
etEndTime.setInputType(InputType.TYPE_NULL);
etEndTime.onTouchEvent(event);
etEndTime.setInputType(inType);
etEndTime.setSelection(etEndTime.getText().length());
builder.setTitle("选取结束时间");
builder.setPositiveButton("确 定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
StringBuffer sb = new StringBuffer();
sb.append(String.format("%d-%02d-%02d",
datePicker.getYear(),
datePicker.getMonth() + 1,
datePicker.getDayOfMonth()));
sb.append(" ");
sb.append(timePicker.getCurrentHour())
.append(":").append(timePicker.getCurrentMinute());
etEndTime.setText(sb);
dialog.cancel();
}
});
}
Dialog dialog = builder.create();
dialog.show();
}
return true;
}
}
运行后的效果图:
点击EditTet之后
点击确定之后
来源:https://www.cnblogs.com/tianciliangen/p/4018362.html
android中timepicker 常用属性,Android中实现日期时间选择器(DatePicker和TimePicker)相关推荐
- Android中实现日期时间选择器(DatePicker和TimePicker)
利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器. Dialog的Content布局文件(date_time_dialog.x ...
- android edittext获取 time值,在Android EditText中实现日期时间选择器(DatePicker和TimePicker)...
利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器. Dialog的Content布局文件(date_time_dialog.x ...
- android imageview 的常用属性,android imageview scaletype属性
android imageview scaletype属性并不是很常用,以至于到现在我才注意到,但是在某些应用中,这是一个很重要的属性,比如相册应用. ImageView的Scaletype决定了图片 ...
- Html中CSS常用属性
Html中CSS常用属性 一.注释 在style标签中注释的书写使用"/* 注释内容 */",而不是<!-- 注释内容 -->. 二.文字属性 用于对文字进行修饰的属性 ...
- DOM对象中的常用属性(innerHTML属性,innerText属性,className属性,style属性)
DOM对象中的常用属性 innerHTML属性 innerText属性 className属性 style属性 innerHTML属性 innerHTML属性:用于设置或获取HTML 元素中的内容. ...
- DIDAO.Common --- 项目中的常用类及其中函数
DIDAO.Common --- 项目中的常用类及其中函数 常用函数: CommonHelper.cs using System; using System.Collections.Generic; ...
- #ArcGis中如何对属性表中的字段进行顺序赋值??
#ArcGis中如何对属性表中的字段进行顺序赋值?? 如题,昨天有小伙伴在公号私信里问我"如何在ArcGis中对属性表中的字段进行顺序赋值??"这个问题如果会一点python编程, ...
- android日期选择区间控件_Android日期时间选择器实现以及自定义大小
本文主要讲两个内容:1.如何将DatePicker和TimePicker放在一个dialog里面:2.改变他们的宽度: 问题1:其实现思路就是自定义一个Dialog,然后往里面同时放入DatePick ...
- 关于Element UI中日期时间选择器在IE浏览器中初始化显示的兼容性问题
一.简单说明 项目使用Vue+Element UI进行开发,使用了 DateTimePicker 日期时间选择器. 二.问题描述 打开修改对话框(进行选择日期操作可以正常显示),在谷歌浏览器中初始化时 ...
- php中日期选择代码,实现JS日期时间选择器
这次给大家带来实现JS日期时间选择器,实现JS日期时间选择器的注意事项有哪些,下面就是实战案例,一起来看一下. flatpickr 是一个轻量级.注重精益.由 UX 驱动和可扩展的 JavaScrip ...
最新文章
- 【Qt】Qt样式表总结(四):CSS盒子模型
- Mac OS X Yosemite安装盘U盘制作
- poly-YOLOv3
- c语言程序解决生活中的问题作文,生活中烦恼的事五年级满分作文
- 网站优化排名提升不发愁,这几点你掌握了吗?
- Stack:peek、pop、push、search
- 学会这个用这个做PPT,把24小时的工作变成1秒!高效神器保住你的发际线~
- php笔记之echo/print比较
- 如何成为一位牛逼的高手
- Flink on Zeppelin 流计算处理最佳实践
- 阶段1 语言基础+高级_1-3-Java语言高级_09-基础加强_第3节 注解_14_注解_自定义注解_格式本质...
- 20191102每日一句
- 关羽卖枣,张飞杀猪,二人何以有“盖世武功”?
- 微波工程(7)——谐振器理论
- 延时芯片C005介绍
- 2016 Multi-University Training Contest 2 1012 La Vie en rose (暴力)
- display 常用属性
- github如何写博客
- Vue ElementUI el-scrollbar 嵌套 el-tree 出现横向纵向滚动条
- 飞天加速计划初体验-阿里云开发者社区