android 时间选择器 自己选择时间 仿小米定闹铃

源码:http://download.csdn.net/detail/lm_zp/9518943

activity_main.xml

<LinearLayout 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"    android:orientation="vertical"   > <Button      android:id="@+id/button"     android:layout_width="match_parent"     android:layout_height="wrap_content"     android:text="选择时间"     />   <TextView        android:id="@+id/text"       android:layout_width="match_parent"       android:layout_height="wrap_content"              /></LinearLayout>

mytimer.xml

<?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:background="#c0c0c0"    android:orientation="vertical" >    <RelativeLayout        android:id="@+id/rl"        android:layout_width="wrap_content"        android:layout_height="wrap_content" >        <Button            android:id="@+id/button_cancel"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="取消" />        <Button            android:id="@+id/button_confirm"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_alignParentRight="true"            android:text="确定" />    </RelativeLayout>    <RelativeLayout        android:layout_width="wrap_content"         android:layout_gravity="center_horizontal|center_vertical"        android:layout_height="wrap_content" >        <NumberPicker            android:id="@+id/numpick"            android:layout_width="wrap_content"            android:layout_height="wrap_content" />        <TimePicker            android:id="@+id/time"            android:layout_width="wrap_content"            android:layout_toRightOf="@id/numpick"            android:layout_height="wrap_content" />    </RelativeLayout></LinearLayout>

MainActivity.java

package com.example.mytimer;import android.app.Activity;import android.app.Dialog;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.NumberPicker;import android.widget.TextView;import android.widget.TimePicker;public class MainActivity extends Activity {private NumberPicker numpick;private TimePicker time;String[] datename = { "今天", "明天", "后天" };private String currenttime;private TextView textView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);          //显示时间textView = (TextView) findViewById(R.id.text);Button button = (Button) findViewById(R.id.button);button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub//Dialog 对话框 final Dialog dialog = new Dialog(MainActivity.this);//dialog布局View inflate = LayoutInflater.from(MainActivity.this).inflate(R.layout.mytimer, null);dialog.setContentView(inflate);//dialog头 dialog.setTitle("选择时间");dialog.setCanceledOnTouchOutside(true);//显示dialog.show();// 找到该布局文件下的控件time = (TimePicker) inflate.findViewById(R.id.time);numpick = (NumberPicker) inflate.findViewById(R.id.numpick);Button button_cancel = (Button) inflate.findViewById(R.id.button_cancel);Button button_confirm = (Button) inflate.findViewById(R.id.button_confirm);// 是否使用24小时制time.setIs24HourView(true);// 设置日期选择器的显示文字numpick.setDisplayedValues(datename);numpick.setMinValue(0);numpick.setMaxValue(datename.length - 1);// 为按钮设置点击监听事件button_cancel.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub// 关闭当前的窗口dialog.dismiss();}});button_confirm.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub// 1、获取索引值int value = numpick.getValue();// 获取该索引值下的文字(即是今天还是明天、后天)String dateValue = datename[value];// 2、获取当前的分钟时间Integer currentMinute = time.getCurrentMinute();if(currentMinute.toString().length() == 1){  //当前时间currenttime = time.getCurrentHour() + ":0"+ time.getCurrentMinute();}else{currenttime = time.getCurrentHour() + ":"+ time.getCurrentMinute();}//显示赋值textView.setText(dateValue+currenttime+"");//关闭dialog.dismiss();}});}});}}



更多相关文章

  1. android --- 2g/3g流量问题实例
  2. Android实现自动定位城市并获取天气信息
  3. android获取屏幕长宽的方法
  4. Android(安卓)获取MIEI ISMI Sim卡串号等等信息
  5. android 学习笔记有用代码片段(2)
  6. Android(安卓)平台如何获取程序的版本
  7. android闹钟(三):实现时钟功能
  8. android 中对xml 进行解析
  9. 【Android】SQLite数据库的简单使用

随机推荐

  1. Android:Picker(DatePicker、TimerPicker、
  2. Android异步处理四:AsyncTask的实现原理
  3. Android(安卓)源码结构
  4. Android可缩放矢量图形(SVG)
  5. Android中的Selector的用法
  6. Android窗口机制(二)Window,PhoneWindow,Deco
  7. Android的IPC机制
  8. [Android]android源码下载&Eclipse关联an
  9. 【android】EditText属性大全
  10. 随笔:Android不爱C++