作者jakevin (真。假凱文)
看板AndroidDev
標題[分享] Widget設計的一些小心得
時間Wed Mar 14 19:40:42 2012
由於第三個小程式上架了 所以可以開始分享 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
1F:推 Ting1024:感謝分享... 03/14 23:54
2F:推 ak2840:推 要找widget的心得真的不多 03/18 18:03
3F:推 master11360:幫推一個 10/24 17:07