Android開發工程師文集-1 小時學會Widget小工具開發

來源:互聯網
上載者:User

標籤:schema   定製   pre   run   etc   tcl   配置   layout   resource   

前言

大家好,給大家帶來Android開發工程師文集-1 小時學會Widget小工具開發的概述,希望你們喜歡

學會用Widget (小工具)

Widget小工具很方便,很快捷,可以個人化,自己定製,相關功能,可以即時更新最新內容。

  • Widget布局,Widget配置,AppWidgetProvider與Configuration Activity
  • Android Widget
  • xml布局類型:AppWidget Provider
<appwidget-provider  xmlns: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 { @Override public void onDeleted(Context context,int[] appWidgetIds){  super.onDeleted(context,appWidgetIds);} @Override public void onDisabled(Context context){  super.onDisabled(context); } @Override public void onEnabled(Context context){  super.onEnabled(context);  } @Override public void onReceive(Context context,Intent intent){  super.onReceive(context,intent);  } @Override public void onUpdate(Context context,AppWidgetManager appWidgetManager,int[] appWidgetIds){ super.onUpdate(context,appWidgetManager,appWidgetIds);}}
//TimerService extends ServiceTimer timer=new Timer();timer.shedule(new TimerTask(){ @Override public 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小工具開發,如果您還有更好地理解,歡迎溝通
  • 定位:分享 Android&Java知識點,有興趣可以繼續關注

Android開發工程師文集-1 小時學會Widget小工具開發

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.