DatePickerDialog日期选择器的使用
2016-03-31 23:03
337 查看
DatePickerDialog是在安卓系统3.0以后使用的,要使用呢,首先写一个类继承DialogFragment,实现DatePickerDialog.OnDateSetListener的接口,配合Calendar这个类使用
代码如下:
布局文件
代码如下:
package com.huang.datepickerdalog; import java.util.Calendar; import android.app.Activity; import android.app.DatePickerDialog; import android.app.Dialog; import android.app.DialogFragment; import android.app.FragmentManager; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.DatePicker; import android.widget.TextView; public class MainActivity extends Activity { private static final int UPDATE = 1; private TextView mTextView; private Button mbButton; private static int mYear; private static int mMonth; private static int mDay; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findView(); Calendar c = Calendar.getInstance(); mYear = c.get(Calendar.YEAR); mMonth = c.get(Calendar.MONTH); mDay = c.get(Calendar.DAY_OF_MONTH); updateDisplay(); } private void updateDisplay() { StringBuffer s = new StringBuffer().append(pad(mYear)).append("-") .append(pad(mMonth+1)).append("-").append(pad(mDay)); mTextView.setText(s); } private void findView() { mTextView = (TextView) findViewById(R.id.textView1); mbButton = (Button) findViewById(R.id.button1); mbButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { MydatePickerDialog dialog = new MydatePickerDialog(); FragmentManager fm = getFragmentManager(); dialog.show(fm, "pickerDialog"); } }); } /** * 若数字大于10,直接显示,否则显示0c 如:18则显示为18,8则显示08 * * @param c * @return */ private static String pad(int c) { if (c >= 10) { return String.valueOf(c); } else { return "0" + String.valueOf(c); } } public static class MydatePickerDialog extends DialogFragment implements DatePickerDialog.OnDateSetListener { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { DatePickerDialog datePickerDialog = new DatePickerDialog( getActivity(), this, mYear, mMonth, mDay); return datePickerDialog; } @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { mYear = year; mMonth = monthOfYear; mDay = dayOfMonth; } } }
布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.huang.datepickerdalog.MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/textView1" android:layout_marginLeft="20dp" android:text="Button" /> </RelativeLayout>
相关文章推荐
- 仿百度壁纸客户端(二)——主页自定义ViewPager广告定时轮播图
- 快速排序
- 仿百度壁纸客户端(二)——主页自定义ViewPager广告定时轮播图
- jar7
- for 循环嵌套 while 的神奇问题
- leetcode_147 Insertion Sort List
- 浅谈css背景
- Android 中Fragment与Activity通信大汇总
- windows内核情景分析笔记------内核对于物理页面的管理
- Android调试,The selected device is incompatible
- scala学习资料
- Spring
- 20145208 《Java程序设计》第5周学习总结
- 作品-网站-[二次开发]吉玛特商城
- 网络中的那些事儿(五)之校园网规划综述
- Cocos游戏引擎VRDemo正式放出 助力虚拟现实游戏开发
- 实验4 颜色、字符串资源的使用
- 在有子类的时候,其构造函数的执行及顺序。
- 【单调队列】Vijos P1771 瑞士轮 (NOIP2011普及组第三题)
- JavaScript BOM与客户端检测