700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > android 日期弹出框 Android 日期选择框 简洁常用

android 日期弹出框 Android 日期选择框 简洁常用

时间:2023-11-11 12:14:42

相关推荐

android 日期弹出框 Android 日期选择框 简洁常用

/*** @description 选择日期弹出框

*@paramlistener 选择日期确定后执行的接口

*curDate 当前显示的日期

*@return*@authorwqy

* @time -1-6 14:23*/

public voidshowDatePickDialog(DatePickerDialog.OnDateSetListener listener,String curDate) {

Calendar calendar=Calendar.getInstance();int year = 0,month = 0,day = 0;try{

year=Integer.parseInt(curDate.substring(0,curDate.indexOf("-"))) ;

month=Integer.parseInt(curDate.substring(curDate.indexOf("-")+1,curDate.lastIndexOf("-")))-1;

day=Integer.parseInt(curDate.substring(curDate.lastIndexOf("-")+1,curDate.length())) ;

}catch(Exception e) {

e.printStackTrace();

year=calendar.get(Calendar.YEAR);

month=calendar.get(Calendar.MONTH);

day=calendar.get(Calendar.DAY_OF_MONTH);

}

DatePickerDialog datePickerDialog= new DatePickerDialog(this

showDatePickDialog(newDatePickerDialog.OnDateSetListener() {

@Overridevoid onDateSet(DatePicker datePicker,int year,1)">int month,1)">intday) {

etDate.setText(year+ "-" + (month + 1) + "-" +day);

}

},etDate.getText().toString());

说明:etDate为一个输入框EditText 显示当wujiaox前选择的日期,也可使用 TextView 。

⭐使用EditText 时需注意:将EditText Touch 时弹出输入框的效果禁用掉,所以尽量使用 onTouch 来实现弹出,不用 onClick 事件

@OverridebooleanonTouch(View view,MotionEvent motionEvent) {if (motionEvent.getAction()==MotionEvent.ACTION_DOWN){

hideInput();//隐藏输入框

switch(view.getId()) {caseR.id.etDate:

showDatePickDialog(DatePickerDialog.OnDateSetListener() {

@Overrideday) {选择日期过后执行的事件

etDate.setText(year + "-" + (month + 1) + "-" +day);

}

},etDate.getText().toString());break;

}

}return false;

}

>hideInput方法 有可能不是当前输入框调出的输入框,在点击之前有输入框也要隐藏掉

* 隐藏键盘protected hideInput() {

InputMethodManager imm=(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);

View v=getWindow().peekDecorView();if (null !=v) {

imm.hideSoftInputFromWindow(v.getWindowToken(),0);

}

}

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。