2013-09-05 38 views
0

我试图让我的ListView上的点击事件在家庭小部件上。 对于这个我用下面的代码:Android ListView getViewAt

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

这种情况可以通过
intent.getAction()确定;
For enable widget is:android.appwidget.action.APPWIDGET_ENABLED
对于updatewidget是:android.appwidget.action.APPWIDGET_UPDATE