Foros del Web » Programando para Internet » Android »

wigdet novato

Estas en el tema de wigdet novato en el foro de Android en Foros del Web. A ver si alguien puede ayudarme, a un novato en esto y me dice lo que tengo que hacer para cuando pulso mi wigdet en ...
  #1 (permalink)  
Antiguo 15/10/2014, 09:26
 
Fecha de Ingreso: junio-2013
Mensajes: 18
Antigüedad: 11 años, 6 meses
Puntos: 0
wigdet novato

A ver si alguien puede ayudarme, a un novato en esto y me dice lo que tengo que hacer para cuando pulso mi wigdet en la pantalla salga otra imagen que ocupe todo el móvil. Estos son mis datos.

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/widget"
android:minHeight="80dp"
android:minWidth="320dp"
android:updatePeriodMillis="3600000"/>

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >

<ImageView
android:id="@+id/gallery"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/ic_stub" />

</RelativeLayout>

import UILApplication;
import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.content.Intent;
import android.widget.AbsListView;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.RemoteViews;
import android.widget.AdapterView.OnItemClickListener;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.*;
import android.widget.AdapterView.OnItemClickListener;

import com.nostra13.universalimageloader.core.DisplayImag eOptions;
import com.nostra13.universalimageloader.core.ImageLoader ;
import com.nostra13.universalimageloader.core.display.Bit mapDisplayer;
import com.nostra13.universalimageloader.core.display.Fad eInBitmapDisplayer;
import com.nostra13.universalimageloader.core.display.Rou ndedBitmapDisplayer;
import com.nostra13.universalimageloader.core.DisplayImag eOptions;
import com.nostra13.universalimageloader.core.ImageLoader ;
import com.nostra13.universalimageloader.core.assist.Imag eSize;
import com.nostra13.universalimageloader.core.display.Rou ndedBitmapDisplayer;
import com.nostra13.universalimageloader.core.listener.Si mpleImageLoadingListener;
import com.nostra13.universalimageloader.utils.StorageUti ls;

import static Constants.IMAGES;
/**
* Example widget provider
*
* @author ontinareltiempo
* @param <Bundle>
*/
@SuppressWarnings("unused")
public class UILWidgetProvider extends AppWidgetProvider {



private static DisplayImageOptions displayOptions;
private static final String LOG_TAG = "ExampleWidget";

public static String CLOCK_WIDGET_UPDATE = "com.eightbitcloud.example.widget.8BITCLOCK_WIDGET _UPDATE";
protected static ComponentName thisWidget;


@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);

if (CLOCK_WIDGET_UPDATE.equals(intent.getAction())) {
Log.d(LOG_TAG, "Clock update");
// Get the widget manager and ids for this widget provider, then call the shared
// clock update method.
ComponentName thisAppWidget = new ComponentName(context.getPackageName(), getClass().getName());
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
int ids[] = appWidgetManager.getAppWidgetIds(thisAppWidget);
for (int appWidgetID: ids) {
updateAppWidget(context, appWidgetManager, appWidgetID);

}

}
}


public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
UILApplication.initImageLoader(context);
final int widgetCount = appWidgetIds.length;
for (int i = 0; i < widgetCount; i++) {
int appWidgetId = appWidgetIds[i];
updateAppWidget(context, appWidgetManager, appWidgetId);
}
}



static void updateAppWidget(final Context context, final AppWidgetManager appWidgetManager, final int appWidgetId){

ImageSize minImageSize = new ImageSize(90, 90); // 70 - approximate size of ImageView in widget
ImageLoader.getInstance().loadImage(IMAGES[0], minImageSize ,displayOptions, new SimpleImageLoadingListener() {
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
RemoteViews remoteViews = new RemoteViews(context.getPackageName(),R.layout.widg et);
thisWidget = new ComponentName(context, UILWidgetProvider.class);
Intent intent = new Intent(context, UILWidgetProvider.class);
intent.setAction(CLOCK_WIDGET_UPDATE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
remoteViews.setImageViewBitmap(R.id.gallery, loadedImage);
remoteViews.setOnClickPendingIntent(R.id.gallery, pendingIntent);
appWidgetManager.updateAppWidget(thisWidget, remoteViews);

}
});



}
}



public final class Constants {

public static final String[] IMAGES = new String[] {"http://t2.gstatic.com/images?q=tbn:ANd9GcSZrajzoEXNlRWjMGE9L3kqI1EsFN9P5 HCNhMo4xaqLkWuhAixo",
"http://t2.gstatic.com/images?q=tbn:ANd9GcSZrajzoEXNlRWjMGE9L3kqI1EsFN9P5 HCNhMo4xaqLkWuhAixo"};
public static class Config {
public static final boolean DEVELOPER_MODE = false;
}

}


public class UILApplication extends Application {

@TargetApi(Build.VERSION_CODES.GINGERBREAD)
@SuppressWarnings("unused")
@Override
public void onCreate() {
if (Config.DEVELOPER_MODE && Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectAll().pena ltyDialog().build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectAll().penaltyD eath().build());
}

super.onCreate();

initImageLoader(getApplicationContext());
}



public static void initImageLoader(Context context) {
// This configuration tuning is custom. You can tune every option, you may tune some of them,
// or you can create default configuration by
// ImageLoaderConfiguration.createDefault(this);
// method.
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.discCacheFileNameGenerator(new Md5FileNameGenerator())
.tasksProcessingOrder(QueueProcessingType.LIFO)
.writeDebugLogs() // Remove for release app
.build();
// Initialize ImageLoader with configuration.
ImageLoader.getInstance().init(config);
}

}

Etiquetas: androi, app, list
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:17.