Widget android en evento de clic
He creado el widget en android y funciona con éxito, pero ahora quiero usar en evento de clic de widget para que pueda abrir nueva actividad de eso.
Ayuadame
- R.id No se puede resolver
- Manejo simultáneo de eventos onClick y onTouchEvent
- Puede subrayar palabras en texto TextView
- Cómo mostrar el recuento de notificaciones en el icono de mi aplicación en la pantalla principal de Android
- ¿Cómo puedo crear una barra de herramientas (como una barra de acción secundaria) en Android?
- Cómo configurar el enfoque de un widget de botón mediante programación?
- Android EditarTexto Fondo transparente
- Listview normal y coloque el estilo de fondo en android
- Animación de diálogo de progreso personalizado
- Android establecer límites para una capa de capa de dibujar
- Pasar id de la vista adyacente en xml a la vista personalizada y recuperarla en el constructor de la vista personalizada
- ImageView dentro de RelativeLayout tiene relleno superior e inferior
- Cómo forzar a ViewPager a volver a instanciar sus elementos
@Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { for (int i = 0; i < appWidgetIds.length; i++) { int appWidgetId = appWidgetIds[i]; Intent intent = new Intent(context, TaskManagerActivity.class); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); views.setOnClickPendingIntent(R.id.widget_layout, pendingIntent); appWidgetManager.updateAppWidget(appWidgetId, views); } }
En widget.xml tengo el elemento raíz LinearLayout con id widget_layout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/widget_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingTop="10dip" android:paddingLeft="10dip" android:orientation="vertical">
Utilicé esto:
// Create an Intent to launch ExampleActivity Intent intent = new Intent(context, Mainpage.class); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); remoteViews.setOnClickPendingIntent(R.id.widget, pendingIntent);
Dentro de su diseño, para ese widget en particular, dé
android:onClick="your method name inside your activity"
Y en su actividad, dé:
public void methodname(View view) { //give your intent code here }
Nota: Cuando llama a un método como este, su método debe ser de tipo público y debe tener un objeto Ver como parámetro.
- Permiso de Android 6.0.GET_ACCOUNTS
- Cómo crear tu propia aplicación móvil Magento para Android y iPhone