Custom view not shown in horizontal scroll mode Not working

When I try to add my custom view to the horizontal scroll view, it does not appear. but the same custom view is displayed in another layout, such as Relative and Linear Layout.

 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);

My XML is as follows

<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>

tried it too

<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>

the code looks like

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));

         }

Can someone help me. Thanks in advance.

+5
source share
1 answer

Put your own layout this way

<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>
+1
source

All Articles