大家好,今天济南IT培训给大家带来Android开发工程师文集-1 小时学会Widget小组件开发的概述,希望你们喜欢
学会用Widget (小组件)
Widget小组件很方便,很快捷,可以个性化,自己定制,相关功能,可以实时更新最新内容.
Widget布局,Widget配置,AppWidgetProvider与Configuration Activity
Android Widget
xml布局类型:AppWidget Provider
<appwidget-providerxmlns:android="http://schemas.android.com/apk/res/android"//引用的布局文件android:initialLayout="@layout/widget"android:minHeight="50dp"android:minWidth="100dp"//设置更新时间android:updatePerioMillis="66666666"></appwidget-provide>
public class WidgetProvider extends AppWidgetProvider { @Overridepublic void onDeleted(Context context,int[] appWidgetIds){ super.onDeleted(context,appWidgetIds);} @Overridepublic void onDisabled(Context context){ super.onDisabled(context);} @Overridepublic void onEnabled(Context context){ super.onEnabled(context); } @Overridepublic void onReceive(Context context,Intent intent){ super.onReceive(context,intent); } @Overridepublic void onUpdate(Context context,AppWidgetManager appWidgetManager,int[] appWidgetIds){ super.onUpdate(context,appWidgetManager,appWidgetIds);}}
//TimerService extends ServiceTimer timer=new Timer();timer.shedule(new TimerTask(){ @Overridepublic void run(){ updateTime();}},0,1000);}//onDestroypublic void onDestroy(){ super.onDestroy();timer=null;}//updateTime();private void updateTime(){String time = simpletime.format(new Date());}
Widget就是个桌面小组件,有了Widget,我们可以直接在桌面上进行各种操作.
Widget使用
AndroidManifest中声明AppWidget
xml中定义AppWidget配置文件
layout中定义Widget布局文件
创建类继承AppWidgetProvider类
//清单文件中<meta-data android:name="android.appwidget.provider" android:resource="@layout/widget_setting"/>
//onUpdate()重点@Overridepublic void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { super.onUpdate(context, appWidgetManager, appWidgetIds);RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.layout_widget); //Intent intent = new Intent();Intent intent = new Intent();intent.setClass(context, TestWidget.class);intent.setAction(WIDGET_BTN_ACTION);PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);remoteViews.setOnClickPendingIntent(R.id.widget_btn, pendingIntent);appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);}
//清单文件 <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_provider"/>
总结
本文讲了Android开发工程师文集-1 小时学会Widget小组件开发,如果您还有更好
更多济南IT培训相关咨询,请扫描下方二维码