看板 AndroidDev 關於我們 聯絡資訊
由於第三個小程式上架了 所以可以開始分享 widget的開發心得 ps:我的基礎很爛 orz 所以語法上有什麼可以改進的地方 請您可以不吝嗇的告訴我! 拜託 Widget是一個有別於一般 Activity的觀念 特別是對按鈕的監聽事件 以我的小程式為例,在Widget上有三個按鈕、兩個TextView 要修改TextView的文字語法如下 在 Override public void onUpdate下 RemoteViews views = new RemoteViews (context.getPackageName(),R.layout.widget); views.setTextViewText(R.id.TextView01, "Hello World"); 而要監控按鈕的話,就很麻煩了 orz Intent nextIntent = new Intent(context, CardWidget.class); nextIntent.setAction(NextButton); PendingIntent nextPendingIntent = PendingIntent.getBroadcast (context, 0, nextIntent, 0); views.setOnClickPendingIntent(R.id.widgetnext, nextPendingIntent); appWidgetManager.updateAppWidget(appWidgetIds, views); 在 @Override public void onReceive 下 if (intent.getAction().equals(NextButton)){ //按鈕的事件都放這邊 } 而按鈕要轉跳到一般的Activity則是在剛剛宣告監聽按鈕的地方 Intent AddButtonIntent = new Intent(context, 你要去的Activity.class); AddButtonIntent.setAction(AddButton); //注意!! 跳ACTIVITY 的用法不一樣 PendingIntent AddButtonPendingIntent = PendingIntent.getActivity (context, 0, AddButtonIntent, 0); views.setOnClickPendingIntent(R.id.widgetadd, AddButtonPendingIntent); 以上是我在開發widget時會遇到的問題 我就全部都放上來啦! 至於解釋的部份 在煩請高手了,因為我真的不太會解釋語法的意義 orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.124.77.157
Ting1024:感謝分享... 03/14 23:54
ak2840:推 要找widget的心得真的不多 03/18 18:03
master11360:幫推一個 10/24 17:07