0

ListViewon homesreen ウィジェットでクリック イベントを取得しようとしています。このために、次のコードを使用しています。

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);
    }

しかし、ウィジェットをクリックした後だけでなく、このイベントを取得しています。ホーム画面にウィジェットを追加した後もこれを取得しています。

さまざまなアクションを決定する方法はありますか (クリックしてホーム画面に追加しますか?)

4

1 に答える 1

0

このような状況は次のように判断できます
intent.getAction()
ウィジェットを有効にする場合: android.appwidget.action.APPWIDGET_ENABLED
updatewidget の場合:android.appwidget.action.APPWIDGET_UPDATE

于 2013-09-05T15:04:12.603 に答える