Android 用于显示当前时间的窗口小部件(AppWidget)
2010-02-22 16:07:00 来源:WEB开发网Android不用我多说了,这是Google在2007年推出的一款主要用于移动设备的操作系统。google在android sdk1.5中加入了appwidget api。通过这项技术,可以在android手机的主界面(Home界面)显示可以拖动的窗口,用于显示各种用户需要的信息。至于显示什么,就完全依靠开发人员的想象力了。OK,废话少说。我们先来体验一下如何开发一个显示当前时间的appwidget。这个appwidget每秒刷新一次,显示时、分和秒。这个appwidget的效果如图1所示。
图1上方“当前时间:03:34:34”就是我们要实现的appwidget。这个appwidget是可以拖动的。如果在真机或android模拟器中这个时间是变化的。
我们可按如下四步来实现这个appwidget:
步骤1:实现appwidget的layout
在android上编程的人都知道,android的界面离不开layout,appwidget也不例外。建立appwidget layout的方式与建立其他layout的方式相同。在reslayout目录中建立一个firstappwidget.xml文件,代码如下:
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
android:layout_height="wrap_content" android:textSize="20dp"
android:textColor="#F00" />
tvMsg用于显示applwidget中的文字,也就是类似“当前时间:03:34:34”的字符串。
步骤2:编写AppWidgetProvider类
appwidget需要一个AppWidgetProvider类的子类,该类的代码如下:
package net.blogjava.nokiaguy.appwidget;
import java.util.Date;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.widget.RemoteViews;
public class MyAppWidgetProvider extends AppWidgetProvider
{
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds)
赞助商链接