我正在尝试在homesreen小部件上的ListView
上获取点击事件。
为此,我使用以下代码:
public class ViewFactory implements RemoteViewsService.RemoteViewsFactory {
...
@Override
public RemoteViews getViewAt(int position) {
RemoteViews row=new RemoteViews(ctxt.getPackageName(),
R.layout.row);
Log.i("position receive trans", Integer.toString(position));
row.setTextViewText(android.R.id.text1, items[position]);
Intent i = new Intent(this.ctxt, AppWidget.class);
i.setAction(ACTION_WIDGET_UPDATE_POSITION);
i.putExtra("position", position);
row.setOnClickFillInIntent(android.R.id.text1, i);
return(row);
}
但是我不仅在点击小部件后才收到此事件。在将小部件添加到主屏幕后,我也得到了这个。
有没有办法确定不同的动作(点击并添加到主屏幕?)
答案 0 :(得分:0)
这种情况可以通过确定
intent.getAction()
;
对于启用小部件是:android.appwidget.action.APPWIDGET_ENABLED
对于updatewidget是:android.appwidget.action.APPWIDGET_UPDATE