I want to set two grid view for same layout. I can also able to set that within same lay out but due to scrollable control its look like a "wrap_content".
but i want to show full grid view in a screen one after another like below fig.
in above fig. grid view show full height of it. so please help me.
Thank you .
TRY THIS :
public void createTableRow_you(int no) {
          tr_u = new TableRow(this);
          LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT
                  , LayoutParams.WRAP_CONTENT);
          tr_u.setLayoutParams(lp);
          tr_u.setWeightSum((float) 1.0);
          tr_u.setPadding(10, 0, 10, 0);
          tr_u.setGravity(Gravity.CENTER_VERTICAL );
          ImageView img1= new ImageView(this);
          //img1.setLayoutParams(lp);
          img1.setPadding(10, 10, 10, 10);
         // img1.setScaleType(ScaleType.FIT_XY);
          if (density == DisplayMetrics.DENSITY_HIGH) {
              img1.setLayoutParams(new TableRow.LayoutParams(125, 125 ));
          }else {
              img1.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
          }
          if (no < photo_icon_u.size()) {
              img1.setImageDrawable(photo_icon_u.get(no));
              img1.setId(Integer.parseInt(photoID_profile.get(no)));
              img1.setClickable(true);
              img1.setOnClickListener(this);
              img1.setTag("profile");
          }else {
              img1.setImageResource(R.drawable.icon);
              img1.setVisibility(View.GONE);
          }
          ImageView img2= new ImageView(this);
          //img2.setLayoutParams(lp);
          img2.setPadding(10, 10, 10, 10);
        //  img2.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, (float) 0.33));
        //  img2.setScaleType(ScaleType.FIT_XY);
          if (density == DisplayMetrics.DENSITY_HIGH) {
              img2.setLayoutParams(new TableRow.LayoutParams(125, 125 ));
          }else {
              img2.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));  
          }
          if (no+1 < photo_icon_u.size() ) {
              img2.setImageDrawable(photo_icon_u.get(no+1));
              img2.setId(Integer.parseInt(photoID_profile.get(no+1)));
              img2.setClickable(true);
              img2.setOnClickListener(this);
              img2.setTag("profile");
          }else {
              img2.setImageResource(R.drawable.icon);
              img2.setVisibility(View.GONE);
          }
          ImageView img3= new ImageView(this);
         // img3.setLayoutParams(lp);
          img3.setPadding(10, 10, 10, 10);
        //  img3.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, (float) 0.34));
          //img3.setScaleType(ScaleType.FIT_XY);
          if (density == DisplayMetrics.DENSITY_HIGH) {
              img3.setLayoutParams(new TableRow.LayoutParams(125, 125 ));
          }else {
              img3.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));  
          }
          if ( no+2 <  photo_icon_u.size()) {
              img3.setImageDrawable(photo_icon_u.get(no+2));
              img3.setId(Integer.parseInt(photoID_profile.get(no+2)));
              img3.setClickable(true);
              img3.setOnClickListener(this);
              img3.setTag("profile");
          }else {
              img3.setImageResource(R.drawable.icon);
              img3.setVisibility(View.GONE);
          }
          tr_u.addView(img1);
          tr_u.addView(img2);
          tr_u.addView(img3);
        //.  tb_photo_u.addView(tr_u);
          tb_photo_u.addView(tr_u, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
        }
                        You cannot have a GridView in a ScrollbarView. So what you want is not possible. You can have the two gridviews to share the screen space equally.
<LinearLayout android:layout_height="fill_parent"
    .... >
    <GridView android:layout_weight="1"
     ....... >
    <GridView android:layout_weight="1"
     ....... >
</LinearLayout>
There is a download asynctask example here.
In onProgressUpdate set the downloaded image to its view.
 protected void onProgressUpdate(Integer... progress) {
     setImageToView(bitmapImg, progress[0]); // progress[0] is the index or id.
 }
You should do it the hard way. Extend the AdapterView class and measure and layout the items yourself. Here is link for start. The layout now would  look like 
<ScrollView ....>
    <LinearLayout android:layout_height="fill_parent"
        .... >
        <MyGridView android:layout_height="wrap_content"
         ....... >
        <MyGridView android:layout_height="wrap_content"
         ....... >
    </LinearLayout>
</ScrollView>
                        You can't put a GridView inside a ScrollView because the scroll view will eat all the Vertical TouchEvents.
I had to work around this problem as well, my solution was to implement an AdapterView by myself to emulate the gridView behevior without extending ScrollView. 
I did it with horizontal LinearLayout inside a vertical LinearLayout and dynamic margin between elements.
that way you will have only a root ScrollView that let you scroll down the layout with all the GridView element.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With