Private classAppadapterextendsBaseadapter {@Override Public intGetCount () {//TODO auto-generated Method Stub returnUserapp.size () +sysapp.size () +2; } @Override PublicObject GetItem (intarg0) { //TODO auto-generated Method Stub returnarg0; } @Override Public LongGetitemid (intarg0) { //TODO auto-generated Method Stub returnarg0; } @Override PublicView GetView (intposition, View arg1, ViewGroup arg2) {AppInfo app; //determine if the current position is the first, if it is returned to a TextView if(position==0) {TextView TV=NewTextView (appmanageractivity. This); Tv.settext ("User Program (" +userapp.size () + ")"); Tv.settextcolor (Color.White); returnTV; //determines whether the current position is used to display the next TextView location, which is the user program collection +1}Else if(Position==userapp.size () +1) {TextView TV=NewTextView (appmanageractivity. This); Tv.settext ("System Program (" +sysapp.size () + ")"); Tv.settextcolor (Color.White); returnTV; //determine location is not used to display the user program location}Else if(position<=userapp.size ()) {App= Userapp.get (position-1); //and finally the location to show the system program.}Else{app= Sysapp.get (Position-userapp.size ()-2); } View v=NULL; Viewholder Viewholder=NULL; //for validation, the cache must be a subclass of LinearLayout, if(Arg1! =NULL&&arg1instanceoflinearlayout) {v=arg1; Viewholder=(Viewholder) V.gettag (); } Else{v= View.inflate (appmanageractivity. This, R.layout.item_app_show,NULL); Viewholder=NewViewholder (); Viewholder.tv_name=(TextView) v. Findviewbyid (r.id.app_item_tv_name); Viewholder.tv_location=(TextView) v. Findviewbyid (r.id.app_item_tv_location); Viewholder.img_icon=(ImageView) v. Findviewbyid (R.ID.APP_ITEM_IMG_ICON); //Consistent CorrespondenceV.settag (Viewholder); } viewHolder.img_icon.setImageDrawable (App.geticon ()); ViewHolder.tv_name.setText (App.getname ()); if(App.isrow ()) {ViewHolder.tv_location.setText ("Internal Storage Program"); } Else{ViewHolder.tv_location.setText ("External Storage Program"); } returnv; } } Static classViewholder {ImageView img_icon; TextView Tv_name; TextView tv_location; }
Android Project Complex ListView