2013-03-11 12 views
5

Kiedy próbuję dodać własny widok do poziomego widoku przewijania, nie jest on wyświetlany. , ale ten sam niestandardowy widok jest wyświetlany w innym układzie, jak Układ względny i liniowy.Widok niestandardowy nie jest wyświetlany w widoku poziomego przewijania Nie działa

layout=new LinearLayout(this); 
     layout.setBackgroundColor(Color.YELLOW); 
     layout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.MATCH_PARENT)); 
     layout.setOrientation(LinearLayout.HORIZONTAL); 

     l = new PredicateLayout(this); 
//  l.sendtext(info); 
     for(int j=0;j<info.length;j++) 
     { 

      LinearLayout aa=new LinearLayout(this); 
      aa.setOrientation(LinearLayout.VERTICAL); 
      t = new TextView(this); 
       t.setText(info[j]); 
       t.setBackgroundColor(Color.GREEN); 
       t.setTextSize(i); 
       t.setWidth(screenwidth/2); 
       aa.addView(t); 
       l.addView(aa, new PredicateLayout.LayoutParams(0, 0)); 

     } 

     layout.addView(l); 
     scroll.addView(layout); 

Moje XML wyglądać tak

<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scroll" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    android:orientation="horizontal" 
    > 

</HorizontalScrollView> 

próbował również jak ten

<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scroll" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    android:orientation="horizontal" 
    > 

    <com.test.app.PredicateLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent" 
     android:id="@+id/predicate_layout" 
     > 

    </com.omnion.bible.PredicateLayout> 
</HorizontalScrollView> 

kodu wyglądać

test=(PredicateLayout)findViewById(R.id.predicate_layout); 

for(int j=0;j<info.length;j++) 
     { 

      LinearLayout aa=new LinearLayout(this); 
      aa.setOrientation(LinearLayout.VERTICAL); 
      t = new TextView(this); 
       t.setText(info[j]); 
       t.setBackgroundColor(Color.GREEN); 
       t.setTextSize(i); 
       t.setWidth(screenwidth/2); 
       aa.addView(t); 
       test.addView(aa, new PredicateLayout.LayoutParams(0, 0)); 

     } 

Może ktoś mi pomóc. Z góry dziękujemy.

+0

jeśli chcesz tworzyć niestandardowe zobaczyć trzeba dodać widok w układzie .. – Janmejoy

Odpowiedz

1

Połóż niestandardowy układ jak ten

<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scroll" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    android:orientation="horizontal" 
    > 
<LinearLayout 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent"> 
    <com.test.app.PredicateLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent" 
     android:id="@+id/predicate_layout" 
     > 

    </com.omnion.bible.PredicateLayout> 
</LinearLayout> 
</HorizontalScrollView> 
Powiązane problemy