2011-07-20 25 views
8

LinearLayout ürününe birden çok Görünüm eklemek istiyorum. İşte ben LinearLayout için çoklu görünüm ekleme eklemek için kullanıyorum kod.Linearlayout'a dinamik olarak görünüm ekleme sorunu

Java kodu: Burada

LinearLayout seriesMainListItemView = (LinearLayout) findViewById(R.id.SeriesMainListItemView); 
       LayoutInflater mInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

       for (int i=0; i<scheduleArr.length; i++) { 

         View inflatedView = mInflater.inflate(R.layout.scheduleitem, null); 
         TextView inflatertext1 = (TextView) inflatedView.findViewById(R.id.text1); 
         TextView inflatertext2 = (TextView) inflatedView.findViewById(R.id.text2); 
         inflatertext1.setText(scheduleArr[i][0]); 
         inflatertext2.setText(scheduleArr[i][1]); 
         Log.i("data",i + " " + scheduleArr[i][0] + "/" + scheduleArr[i][1]); 
         seriesMainListItemView.addView(inflatedView); 
       } 

Ben birden çok kez eklemek istediğiniz Görünüm xml olduğunu.

İşte bunu eklemek istediğiniz LinearLayout olduğunu.

<TableLayout 
       android:layout_gravity="center_vertical" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:paddingLeft="1dip" 
       android:paddingRight="1dip" > 
       <TableRow 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent"> 
        <ImageView 
         android:id="@+id/imgSeriesMainScheduleImg" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:layout_gravity="center" 
         android:background="@drawable/scheduleheader"/> 
        <LinearLayout 
         android:id="@+id/SeriesMainListItemView"          
         android:layout_width="fill_parent" 
         android:layout_height="fill_parent"> 
        </LinearLayout>                        
       </TableRow> 
.............. 
</TableLayout> 

Ama dizinin uzunluğu 3. benim kodunda sorunu nedir rağmen sadece tek görünüm, LinearLayout içinde ekliyor?

+4

LinearLayout öğesinin yönünü ayarladınız mı? – Sujit

+0

Hiçbir yön ayarlanmadı. –

cevap

11

LinearLayout öğesinin yönünü Dikey olarak ekledim. Ve mükemmel olur. Tavsiyelerin için Sujit teşekkür ederim.

+0

Bu benim sorunumu çözdü! Özel bir android bileşeni yapmaya çalışıyordum ve LinearLayout'u genişleten yeni sınıfımdaki yönelimi ayarlamayı unuttum. –

0

LayoutParams nesnesini alan addView() sürümünü kullanın, uygun bir LinearLayout.LayoutParams verin ve bunun yardımcı olup olmadığını görün.

+0

"seriesMainListItemView.addView (inflatedView, i, new LinearLayout.LayoutParams (LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)) ile çalıştım;"; Ayrıca, sonuçta hiçbir değişiklik yok –

+0

@dalandroid: Widget'ların eklenip eklenmediğini görmek için Hiyerarşi Görünümü'nü kullanın. Yoksa, kodunuzun neden çağrılmadığını veya bir şey olmadığını belirleyin. Öyleyse, Hiyerarşi Görünümü neden görünür olmadıklarını belirtmelidir. – CommonsWare

İlgili konular