studio programacion móviles libros desarrollo curso con aplicaciones android android-widget

móviles - programacion android pdf 2018



widget de Android en evento clic (3)

He creado un widget en Android y funciona correctamente, pero ahora quiero usar el evento de clic en el widget para poder abrir una nueva actividad a partir de eso.

Ayuadame


Dentro de tu diseño, para ese widget particular dale

android:onClick="your method name inside your activity"

y en tu actividad, da:

public void methodname(View view) { //give your intent code here }

Nota: Cuando llama a un método como este, su método debe ser público y debe tener un objeto View como parámetro.


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


@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 el 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">