【博主:各位博友,网友们,大家网上好!欢迎光临本博客。
欢迎多多交流,多提意见,互相学习,互相进步,我们的口号是:好好学习,天天向上。】
最近看了不少资料,关于widget的东东还真不少。自己做个DEMO并做下总结。
widget含义:基实就是窗口小部件的意思。就是手机主页上的一些小程序。例如:倒计时,音乐播放控制器,当前时间的显示等等。应用很广。
接下来建立自己的第一个widget小程序:
创建工程:WidgetDemo
widget.xml:
创建res/xml/widget_provider.xml
配置AndroidManifest.xml,注册广播信息:
WidgetDemo.java创建,处理业务逻辑:
/**
* 更新widget
*/
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) {
Timer timer = new Timer();
timer.scheduleAtFixedRate(new ATime(context,appWidgetManager), 1, 60000);
super.onUpdate(context, appWidgetManager, appWidgetIds);
}
/**
* 定时器实现
*
*/
private class ATime extends TimerTask{
RemoteViews remoteViews;
AppWidgetManager appWidgetManager;
ComponentName thisWidget;
Date date = new Date();
Calendar calendar = new GregorianCalendar(2014,06,13);
long days = (((calendar.getTimeInMillis()-date.getTime())/1000))/86400;
public ATime(Context context,AppWidgetManager appWidgetManager){
this.appWidgetManager = appWidgetManager;
remoteViews = new RemoteViews(context.getPackageName(),R.layout.widget1);
thisWidget = new ComponentName(context,WidgetDemo.class);
}
public void run() {
remoteViews.setTextViewText(R.id.wordcup, "距离巴西世界杯还有" + days+"天");
appWidgetManager.updateAppWidget(thisWidget, remoteViews);
}
}
}
最后效果:
在手机主界面,长按,然后点widget,选择wdigetDemo,ok.
介绍完了,希望给给大家帮助。
转载请注明出处。