Ho un array di byte che contiene un'immagine recuperata dalla rete. Li sto caricando pigramente sulla mia attività di interfaccia utente (o sto provando almeno a: D) usando Bitmapfactory, BitmapDrawable e setImageDrawable. qui è il mio codice:setImageBitmap non ha effetto visibile
RelativeLayout r =(RelativeLayout) adap.getGroupView(Integer.parseInt(groupPos), false, null, null);
ImageView iv = (ImageView) r.findViewById(R.id.imgGruppo);
Log.w("",""+raw_img.length);
Bitmap bm = BitmapFactory.decodeByteArray(raw_img, 0, raw_img.length);
Drawable drawable = new BitmapDrawable(bm);
Log.i("","pre setimage");
iv.setImageDrawable(drawable);
//added for testing only, with no effects.
//((ELA) Activity_Titoli_2.this.getExpandableListAdapter()).notifyDataSetChanged();
//ELA is my expandable list adapter
Log.i("","post setimage"+bm.getRowBytes()); //just to see that i have actual data in raw_img and such
qui è la XML coinvolto
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayoutTitoli2_gruppo"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textNomeGruppo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Large Text"
android:textColor="#FF0000"
android:padding="14dp"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/textNoteGruppo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textNomeGruppo"
android:paddingLeft="14dp"
android:paddingRight="14dp"
android:paddingBottom="7dp"
android:text="Small Text"
android:textAppearance="?android:attr/textAppearanceSmall" />
<ImageView
android:id="@+id/imgGruppo"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:src="@drawable/icon"
/>
</RelativeLayout>
ho aggiunto "android: src ..." solo per controllare se l'ImageView è visibile, e lo è. L'unico problema è che non posso cambiarlo! Ho provato setImageBitmap, usando solo la bitmap che ho creato, ho provato setimageDrawable creando un BitmapDrawable, ma senza effetti. nessun errore, niente di niente. Per favore, dov'è l'errore? grazie
Sarebbe utile per chiamare iv.invalidate() dopo iv.setImageDrawable (drawable)? –
se aggiungo invalidate() al codice, nulla cambia anche –
, grazie al ragazzo che ha downvoted senza dire nulla di costruttivo. evviva, amico. –