Android 简单谈谈widget

移动开发 Android
本篇介绍一下应用小程序,为大家娱乐作为一个小题目。

日期widget

DatePickerDatePickerDialogDatePickerDialog是装载DatePicker的一个简单的容器,如图所示。分别有一个触发方法OnDateChangedListener( ) 和OnDateSetListener( )。

在这个例子中,我们设置了两个button和一个textView,当按键弹出DatePickDialog。

步骤1:一些有关时间的java函数

获得当前时间的实例:Calendar calendar = Calendar.getInstance();

获得当前时间:calendar.get(Calendar.YEAR),通过设置参数可获得年,月,日,时,分,秒

设置时间:calendar.set(Calendar.YEAR,2011),可设置年,月,日,时,分,秒

用String给出当前的时间信息,可以使用Java的SimpleDateFormat,如下处理:

 

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); //可以设置不同的类型。通过sdf.format(calendar.getTime()就可以获得相关的info string,可供出来

步骤2:设置Android XML文件并编写有关的代码(略去)

步骤3:弹出日期Dialog,并设置Set的触发回调函数

java代码:

  1. new DatePickerDialog(   
  2. /*参数1:context,在我的例子是内部类中调用,所有需指明this是那个this*/ Chapter9Test1.this,   
  3. /*参数2:设置Set日期的回调函数*/ dateSet,   
  4. /*参数3,4,5:设置的年月日*/ calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE)).show() ; 

最后一个show()表示将dialog显示出来。Set的回调函数,是OnDateSetListener(),如下:

java代码

  1. DatePickerDialog.OnDateSetListener dateSet = new DatePickerDialog.OnDateSetListener() {  
  2. public void onDateSet (DatePicker view, int year, int monthOfYear, int dayOfMonth) {  
  3. calendar.set(Calendar.YEAR, year);  
  4. calendar.set(Calendar.MONTH, monthOfYear);  
  5. calendar.set(Calendar.DATE, dayOfMonth);   
  6.   }  
  7. }; 

效果图:

模拟时钟和数字时钟

前面的例子,我们通常要设置某个日期或者时间,如果我们只是想向用户显示当前的时间,可以采用模拟始终和数字时钟。如图所示,下面是相关的Android XML文件:

java代码:

  1. <RelativeLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">   
  2. <AnalogClock android:id="@+id/c91_analog" 
  3. android:layout_width="fill_parent" android:layout_height="wrap_content"   
  4. android:layout_centerHorizontal="true" 
  5. android:layout_alignParentTop="true" /> 
  6. <DigitalClock android:id="@+id/c91_digital" 
  7. android:layout_width="wrap_content" android:layout_height="wrap_content"   
  8. android:layout_centerHorizontal="true" 
  9. android:layout_below="@id/c91_analog" /> 
  10. </RelativeLayout>  

效果图:

 

【编辑推荐】

Android开发中插入新的Activity

在Android应用程序中使用Internet数据

殊途不同归 Android三大制造商发展之路解析

Android平台开放性使其日益获应用开发商青睐

责任编辑:zhaolei 来源: 开发者
相关推荐

2011-09-07 14:20:42

Android Wid组件

2011-09-08 15:51:33

Android Wid组件

2011-03-14 09:55:25

AndroidWidget

2011-09-08 15:07:10

Android Wid搭建

2010-07-13 09:02:19

Widget开发

2011-09-09 20:14:58

Android Wid

2011-09-08 13:41:53

Widget

2011-09-07 14:01:41

Android Wid实例

2011-09-09 10:00:20

Android Wid开发

2010-01-25 14:04:17

Android Wid

2010-07-23 08:54:02

2011-09-07 10:58:07

Android wid

2011-09-07 17:54:40

Android Wid开发

2011-09-07 13:18:40

Android Wid

2009-11-17 13:45:12

Oracle SQL调

2011-09-07 10:34:48

Android Wid

2011-09-07 13:00:36

2011-09-07 14:39:47

Android Wid设计

2011-09-07 13:42:36

Android Wid实例

2011-09-07 14:55:28

Android WidAppWidget事件
点赞
收藏

51CTO技术栈公众号