Autore Topic: android creare un layout dinamico  (Letto 702 volte)

Offline gbu123

  • Utente junior
  • **
  • Post: 74
  • Respect: +2
    • Mostra profilo
  • Sistema operativo:
    windows 7
android creare un layout dinamico
« il: 17 Settembre 2012, 18:31:48 CEST »
0
ciao
ho il seguente problema :
vorrei preparare una galleria di immagini in maniera dinamica ,
ho pensato di usare un HorizontalScrollView , nel quale aggiungere una ImageView per ogni
immagine presente in un ArrayList , caricato in precedenza e passato all'adapter ;
ho cominciato a scrivere l'adapter che manderà fuori la galleria ma non so come fare :

Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
   
<HorizontalScrollView android:layout_width="fill_parent" android:layout_height="wrap_content">
    <LinearLayout
    android:id="@+id/gn" 
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />
</HorizontalScrollView>

</RelativeLayout>

Codice: [Seleziona]

public class GalleryAdapterN extends ArrayAdapter<String> {
  private final Context context;
  private final ArrayList<String> values;
  private String a;
  HorizontalScrollView gn1 ;
 
  public GalleryAdapterN(Context context, ArrayList<String> values) {
    super(context, R.id.gn, values);
    this.context = context;
    this.values = values;
    gn1 = (HorizontalScrollView.this) ;
   
    for (int i=0; i<values.size(); i++) {     

            a = values.get(i);
            if (a != null ) {
                 ImageView img = new ImageView(context);   

            img.setMaxWidth(40);     
            img.setMaxHeight(40);             
            //img.align(40);     
            //img.setScaleX("fitXY");   
            //img.setOnClickListener(MyActivity.this);     
            gn1.addView(img);
            }
    }

  }

come devo fare ?
« Ultima modifica: 17 Settembre 2012, 21:03:55 CEST da gbu123 »