Android ListView en el widget onClick no funciona

Estoy tratando de hacer que el listrows en mi Widget ListView haga clic en el método setOnClickFillInIntent , pero siempre que haga clic en un ListItem nada happends. Estas son algunas partes clave de mi código:

 Intent i = new Intent(); Bundle extras = new Bundle(); extras.putInt(Resource.WIDGET_PACKAGE, position); i.putExtras(extras); row.setOnClickFillInIntent(R.id.widget_layout_parent, i); 

Esto es al final de getView() en mi ViewFactory. Resource.WIDGET_PACKAGE contiene el nombre de mi paquete y es como cualquier otra clave. La posición int es de los parámetros getView() . R.id.widget_layout_parent es el diseño padre de todos los elementos de la lista.

Aquí está el final de mi WidgetProviders onUpdate()

 Intent clickIntent = new Intent(context, ItemListActivity.class); PendingIntent clickPI = PendingIntent.getActivity(context, 0, clickIntent, PendingIntent.FLAG_UPDATE_CURRENT); widget.setPendingIntentTemplate(R.id.widget_layout_parent, clickPI); appWidgetManager.notifyAppWidgetViewDataChanged(appWidgetIds[i], R.id.widget_list_view); 

¿Hay algo que me falta o hay algo más que te gustaría saber?

Toda la ayuda es apreciada! 🙂

Cuando llama a setPendingIntentTemplate(...) , el id debe ser el de AdapterView (en este caso el ListView). Cuando llamas a setOnClickFillInIntent(...) , el id debe ser el de la vista raíz del diseño del elemento, que es lo que ya estás haciendo si leo tu mensaje original correctamente.

 public void onUpdate(Context context, AppWidgetManager manager, int[] appWidgetIds) { /* ... */ widget.setPendingIntentTemplate(R.id.appwidget_listview, clickPI); /* ... */ } public RemoteViews getViewAt(int position) { /* ... */ row.setOnClickFillInIntent(R.id.widget_layout_parent, intent); /* ... */ return row; } 

Por encima de la respuesta por @ karakuri obras perfectas.

Ambos setPendingIntentTemplate y setOnClickFillInIntent deben utilizarse juntos. Uno no funcionará sin el otro.

  • Android ExpandableListView - establece cierto grupo para no expandible
  • Cómo obtener un elemento de un niño en ExpandableListView?
  • ¿Puedo ejecutar JavaScript sin un WebView, o un WebView puede ejecutarse sin un contexto de actividad, como en un servicio?
  • Superponer una capa Transparente de pantalla completa en Android 4.4 (KitKat)
  • View.setEnabled (false) no funciona muy bien en android
  • ¿Cómo puedo determinar si una aplicación de Android se ha creado con una vista web?
  • Los métodos getTop (), getLeft (), getX (), getY (), getWidth (), getHeight () de la vista de Android
  • ¿Es posible cambiar el navegador / motor predeterminado para la vista Web de Android?
  • Cuál es la ventaja de usar el espacio sobre la vista
  • Expanda todos los niños en la vista de lista expandible
  • Utilizar ChromeView en la aplicación para Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.