оказывает виджет элементов в цикле после нажатия я хочу начать DetailsActivity (он должен отправить идентификатор этой деятельности)Android - отправка статистов через PendingIntent
Cursor currentCursor = dbHelper.getWidgetCursor();
for(int k=0; k < currentCursor.getCount(); k++){
currentCursor.moveToPosition(k);
RemoteViews rw = new RemoteViews(context.getPackageName(), R.layout.w_calendar_item);
Intent intentRow = new Intent(context, DetailsActivity.class);
Log.v("a", "index: "+currentCursor.getInt(currentCursor.getColumnIndex(SqlHelper.COLUMN_ID)));
intentRow.putExtra("index", currentCursor.getInt(currentCursor.getColumnIndex(SqlHelper.COLUMN_ID)));
PendingIntent pendingIntentRow = PendingIntent.getActivity(context, 1, intentRow, PendingIntent.FLAG_CANCEL_CURRENT);
rw.setOnClickPendingIntent(R.id.w_li, pendingIntentRow);
views.addView(R.id.w_list, rw);
}
Моей проблема заключается в том, что DetailsActivity всегда получает индекс 103 (который последнее в списке) не имеет значения, какой пункт я нажимаю
Это потому, что вы * отменяете * предыдущее ожидающее намерения снова и снова. Подумайте о создании чего-то «уникального» в 'intentRow' - например. поддельный 'Uri', переданный' Intent # setData (Uri) 'будет делать трюк - используйте инкрементный путь или какую-то глупость. – Jens