Android源码:自定义日期时间控件(SelectTime)
创始人
2025-01-09 20:10:41
0

功能分类:生活

支持平台:Android

运行环境:Eclipse

开发语言:Java

开发工具:Eclipse

源码大小:90.47KB

源码下载地址:http://down.51cto.com/data/1977586

源码简介

 

附件为Android平台的一个自定义日期时间控件(SelectTime) 的源码。

来自安卓巴士地址:http://www.apkbus.com/forum.php?mod=viewthread&tid=174518&extra=

源码运行截图

源码片段

  1. package com.widget.time; 
  2.   
  3. import java.text.SimpleDateFormat; 
  4. import java.util.Calendar; 
  5. import java.util.Date; 
  6.   
  7. import android.app.Activity; 
  8. import android.app.AlertDialog; 
  9. import android.content.DialogInterface; 
  10. import android.os.Bundle; 
  11. import android.util.Log; 
  12. import android.view.LayoutInflater; 
  13. import android.view.View; 
  14. import android.view.View.OnClickListener; 
  15. import android.widget.Button; 
  16. import android.widget.EditText; 
  17.   
  18. public class MainActivity extends Activity { 
  19.     WheelMain wheelMain; 
  20.     EditText txttime; 
  21.   
  22.     Button btnselecttime1, btnselecttime2, btnselecttime3; 
  23.   
  24.     int year, month, day, hour, min; 
  25.   
  26.     LayoutInflater inflater; 
  27.   
  28.     @Override 
  29.     public void onCreate(Bundle savedInstanceState) { 
  30.         super.onCreate(savedInstanceState); 
  31.         setContentView(R.layout.main); 
  32.         txttime = (EditText) findViewById(R.id.txttime); 
  33.         btnselecttime1 = (Button) findViewById(R.id.button1); 
  34.         btnselecttime2 = (Button) findViewById(R.id.button2); 
  35.         btnselecttime3 = (Button) findViewById(R.id.button3); 
  36.   
  37.         String yyyy = null; 
  38.         SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); 
  39.         Date curDate = new Date(System.currentTimeMillis());// 获取当前时间 
  40.         yyyy = formatter.format(curDate); 
  41.           
  42.         Log.e("-------------", yyyy); 
  43.   
  44.         Calendar calendar = Calendar.getInstance(); 
  45.   
  46.         year = calendar.get(Calendar.YEAR); 
  47.         month = calendar.get(Calendar.MONTH); 
  48.         day = calendar.get(Calendar.DAY_OF_MONTH); 
  49.         hour = calendar.get(Calendar.HOUR_OF_DAY); 
  50.         min = calendar.get(Calendar.MINUTE); 
  51.   
  52.         inflater = LayoutInflater.from(MainActivity.this); 
  53.   
  54.         btnselecttime1.setOnClickListener(new OnClickListener() { 
  55.   
  56.             @Override 
  57.             public void onClick(View arg0) { 
  58.   
  59.                 final View timepickerview = inflater.inflate( 
  60.                         R.layout.timepicker, null); 
  61.                 ScreenInfo screenInfo = new ScreenInfo(MainActivity.this); 
  62.   
  63.                 wheelMain = new WheelMain(timepickerview, 0); 
  64.                 wheelMain.screenheight = screenInfo.getHeight(); 
  65.                 wheelMain.initDateTimePicker(year, month, day, hour, min); 
  66.   
  67.                 new AlertDialog.Builder(MainActivity.this) 
  68.                         .setTitle("选择时间") 
  69.                         .setView(timepickerview) 
  70.                         .setPositiveButton("确定", 
  71.                                 new DialogInterface.OnClickListener() { 
  72.                                     @Override 
  73.                                     public void onClick(DialogInterface dialog, 
  74.                                             int which) { 
  75.                                         txttime.setText(wheelMain.getTime()); 
  76.                                     } 
  77.                                 }).setNegativeButton("取消", null).show(); 
  78.   
  79.             } 
  80.         }); 
  81.   
  82.         btnselecttime2.setOnClickListener(new OnClickListener() { 
  83.   
  84.             @Override 
  85.             public void onClick(View arg0) { 
  86.                 LayoutInflater inflater = LayoutInflater 
  87.                         .from(MainActivity.this); 
  88.                 final View timepickerview = inflater.inflate( 
  89.                         R.layout.timepicker, null); 
  90.                 ScreenInfo screenInfo = new ScreenInfo(MainActivity.this); 
  91.   
  92.                 wheelMain = new WheelMain(timepickerview, 1); 
  93.                 wheelMain.screenheight = screenInfo.getHeight(); 
  94.                 wheelMain.initDateTimePicker(year, month, day, hour, min); 
  95.   
  96.                 new AlertDialog.Builder(MainActivity.this) 
  97.                         .setTitle("选择日期") 
  98.                         .setView(timepickerview) 
  99.                         .setPositiveButton("确定", 
  100.                                 new DialogInterface.OnClickListener() { 
  101.                                     @Override 
  102.                                     public void onClick(DialogInterface dialog, 
  103.                                             int which) { 
  104.                                         txttime.setText(wheelMain.getTime()); 
  105.                                     } 
  106.                                 }).setNegativeButton("取消", null).show(); 
  107.   
  108.             } 
  109.         }); 
  110.   
  111.         btnselecttime3.setOnClickListener(new OnClickListener() { 
  112.   
  113.             @Override 
  114.             public void onClick(View arg0) { 
  115.                 LayoutInflater inflater = LayoutInflater 
  116.                         .from(MainActivity.this); 
  117.                 final View timepickerview = inflater.inflate( 
  118.                         R.layout.timepicker, null); 
  119.                 ScreenInfo screenInfo = new ScreenInfo(MainActivity.this); 
  120.   
  121.                 wheelMain = new WheelMain(timepickerview, 2); 
  122.                 wheelMain.screenheight = screenInfo.getHeight(); 
  123.                 wheelMain.initDateTimePicker(year, month, day, hour, min); 
  124.   
  125.                 new AlertDialog.Builder(MainActivity.this) 
  126.                         .setTitle("选择年份") 
  127.                         .setView(timepickerview) 
  128.                         .setPositiveButton("确定", 
  129.                                 new DialogInterface.OnClickListener() { 
  130.                                     @Override 
  131.                                     public void onClick(DialogInterface dialog, 
  132.                                             int which) { 
  133.                                         txttime.setText(wheelMain.getTime()); 
  134.                                     } 
  135.                                 }).setNegativeButton("取消", null).show(); 
  136.   
  137.             } 
  138.         }); 
  139.     } 

源码下载地址:http://down.51cto.com/data/1977586

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
P2P的自白|我不生产内容,我... 现在一提起P2P,人们就会联想到正在被有关部门“围剿”的互联网理财服务。×租宝事件使得劳...