Кликабельный ListView Android Widget - PullRequest
0 голосов
/ 15 февраля 2019

Я пытаюсь сделать кликабельный виджет для Android на главном экране.Проблема возникает, когда я пытаюсь поймать функцию Intent in onReceiver, ничего не происходит

Уже пытаюсь сделать Intent с Bundle для отправки дополнений, но не работает.

RemoteViewFactory

public class ListRemoteViewsFactory implements RemoteViewsService.RemoteViewsFactory {

private Context context;
private Cursor cursor;
private Intent intent;


public ListRemoteViewsFactory(Context context, Intent intent) {
    this.context = context;
    this.intent = intent;
}

@Override
public RemoteViews getViewAt(int position) {
    RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.list_item_widget);

    cursor.moveToPosition(position);
    int rowid = cursor.getInt(0);
    if (cursor.getString(3).equals("1")) {
        remoteViews.setInt(R.id.widget_list_image, "setBackgroundResource", R.drawable.ic_check_box_checked);
    } else {
        remoteViews.setInt(R.id.widget_list_image, "setBackgroundResource", R.drawable.ic_check_box_unchecked);
    }

    Bundle extra = new Bundle();
    extra.putInt(ToDoTickWidget.ROWID, rowid);
    Intent activityIntent = new Intent();
    activityIntent.putExtras(extra);

    remoteViews.setOnClickFillInIntent(R.id.widget_list_image, activityIntent);
    return remoteViews;
}
}

WidgetProvider (функция запускается только при установке или запуске приложения)

@Override
public void onReceive(Context context, Intent intent) {
    Log.d("debug", "onReceive");
    super.onReceive(context, intent);
}

Мне нужно получить намерение, в частности Extra, добавленное к намерению вbundle ( rowid ), соответствующий элементу, нажатому в списке.

...