java - using gridview with images in android -


this problematic code:

public class level1 extends activity {  int[] logos = {         r.drawable.arutz8,         r.drawable.channel1,         r.drawable.doctor_gav,         r.drawable.foxgroup3,         r.drawable.careline,         r.drawable.golfnew,         r.drawable.haaretz,         r.drawable.hafenix,         /*r.drawable.hando,         r.drawable.bankleumi,         r.drawable.jerusalempostred,         r.drawable.laisha,         r.drawable.logo,         r.drawable.logodelta,         r.drawable.maariv,         r.drawable.pelephone,         r.drawable.ravbariah,         r.drawable.renuar,         r.drawable.reshet_tv,         r.drawable.sano,         r.drawable.shilav,         r.drawable.sport5,         r.drawable.srigamish,         r.drawable.steimatzky,         r.drawable.superpharm,         r.drawable.supersal,         r.drawable.tambur,         r.drawable.tzometsfarim,         r.drawable.walla,         r.drawable.yediot,*/ };  @override protected void oncreate(bundle savedinstancestate) {     // todo auto-generated method stub     super.oncreate(savedinstancestate);     setcontentview(r.layout.level1);     listadapter adapter = (new arrayadapter<integer>(this, r.layout.level1));      gridview grid = (gridview) findviewbyid(r.id.gridview1);     grid.setadapter(new imageadapter(this)); }   private class imageadapter extends baseadapter  {     private context context;      public imageadapter(context c)      {         context = c;     }      //---returns number of images---     public int getcount() {         return logos.length;     }      //---returns id of item---      public object getitem(int position) {         return position;     }      public long getitemid(int position) {         return position;     }      //---returns imageview view---     public view getview(int position, view convertview, viewgroup parent)      {         imageview imageview;         if (convertview == null) {             imageview = new imageview(context);             imageview.setlayoutparams(new gridview.layoutparams(90, 90));             imageview.setscaletype(imageview.scaletype.fit_xy);             imageview.setpadding(5, 5, 5, 5);         } else {             imageview = (imageview) convertview;         }         imageview.setimageresource(logos[position]);         return imageview;     } }  

}

this program works long size of images 60px per each image. problem in size of image every image got constricted , ugli!. tried use in bigger images , reason first 5 images appears on screen , when try load rest images, app crashes. thought happens because of size of images realized images in same big size , still 5 of them drawn on screen. ideas?

those logs logcat:

logs

and result when press on level 1 button:

result

there problem in public view getview(...) method in imageadapter. when convertview == null, never link convertview imageview. there problem in else-statement. can in 2 ways:

  • by defining imageview in code did, in case best choice:

    imageview imageview = (imageview) convertview;

    if (convertview == null) { convertview = new imageview(context); imageview = (imageview) convertview; // set other parameters }

    // set resource

    return convertview;

  • by defining layout in xml-layout file using layout inflater:

handler handler;

 if (convertview == null) {         layoutinflater li = (layoutinflater) c.getsystemservice(context.layout_inflater_service);         convertview = li.inflate(yourlayoutresourceid, parent, false);         handler = new handler();         handler.itemiv = (imageview) convertview.findviewbyid(imageviewlayoutid);          convertview.settag(handler);     } else {         handler = (handler) convertview.gettag();     }       handler.imageview.setimageresource(...);      return convertview; 

where yourlayoutresourceid id of created xml-layout file (r.layout.exmaple), , imageviewlayoutid id of imaeview in layout (r.id.exmapleiv). last step define inner class handler in imageadapter:

class handler { imageview imageview; }

good luck! have nice development.

kr


Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -