2012-04-13 18 views
1

Ich bekomme dynamische Länge des String-Array und ich möchte Bilder in der ImageButton anzeigen und das auch in der horizontalen Ansicht, wie ich Button hinzugefügt hatte, aber es zeigt in der vertikalen Layout.Bitte helfen. Das ist mein Code:dynamisch hinzufügen imagebutton programmatisch android

 for (int i =0;i<adapt_objmenu.image_array.length;i++){ 
     ImageButton b1 = new ImageButton(myrefmenu); 
      b1.setId(100 + i); 

      // b1.setText(adapt_objmenu.city_name_array[i]); 
      RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
      if (i > 0) { 
       lp.addRule(RelativeLayout.BELOW, b1.getId() - 1); 
      } 
      b1.setLayoutParams(lp); 
      relative.addView(b1); 

    //relate.addView(b1, i, new RelativeLayout.LayoutParams(width,height)); 

    //height = height+80; 



    } 
+0

Sie erkennen Sie Einstellung 'RelativeLayout.BELOW', während' RelativeLayout.RIGHT_OF' würde mehr Sinn machen, wenn ich das richtig verstehe Ihre Frage? –

+0

ok ich habe das aber, wie man Bild auf dem imagebutton setzt, das ist die Hauptfrage – Ved

+0

du meinst, du möchtest Bild einstellen, nachdem 'ImageButton' in' RelativeLayout' hinzugefügt wurde. – Herry

Antwort

2

Verwenden Sie dies in Ihrer dritten Zeile für Bild für ImageButton festlegen.

for (int i =0;i<adapt_objmenu.image_array.length;i++){ 
    ImageButton b1 = new ImageButton(myrefmenu); 
     b1.setId(100 + i); 
     b1.setImageResource(R.drawable.imagename); 
     // b1.setText(adapt_objmenu.city_name_array[i]); 
     RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
     if (i > 0) { 
      lp.addRule(RelativeLayout.RIGHT_OF, b1.getId() - 1); 
     } 
     b1.setLayoutParams(lp); 
     relative.addView(b1); 

//relate.addView(b1, i, new RelativeLayout.LayoutParams(width,height)); 

//height = height+80; 



} 
+0

Eigentlich möchte ich ein statisches Bild als imagebutton-Bild festlegen, da ich es als Paging-Steuerelement anzeigen möchte, genau wie weiße Punkte oben, um die Länge des Arrays anzuzeigen, das die Nr. Anzeigt . der Seiten – Ved

+0

Ihr Bild befindet sich im Ordner Drawable oder irgendwo sonst. Wenn Sie im Drawable-Ordner sind, können Sie 'mImageButton.setImageResource (R.drawable.ic_launcher);' – Herry

+0

verwenden. Dann sollten Sie das Array der Image-Resource-ID vorbereiten und es verwenden in deiner Schleife anwenden. – Herry

Verwandte Themen