如何设置的ListView适配器 [英] How to Set ListView Adapter

查看:147
本文介绍了如何设置的ListView适配器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要帮助,使列表视图适配器。下面是code请与roomid适配器都值名称。

  JSONArray房= jsonObject.getJSONArray(房间);
     的for(int i = 0; I< rooms.length();我++){
        的JSONObject室= rooms.getJSONObject(ⅰ);
       字符串名称= room.optString(房间);
       串roomid = room.optString(roomid);
      最后RoomModel章附表=新RoomModel();
       sched.setName(名);
       sched.setroomId(roomid);
    CustomListViewValues​​Arr.add(附表);}
ListView控件=(ListView控件)findViewById(R.id.C​​hatlistView);

RoomModel.java

 公共类RoomModel {
    私人字符串名称,标识,roomid;公共字符串的getName(){
    返回名称;
}公共无效setname可以(字符串名称){
    this.name =名称;
}公共字符串的getId(){
    返回ID;
}公共无效SETID(字符串ID){
    this.id = ID;
}
公共字符串getroomId(){
    返回roomid;
}公共无效setroomId(字符串roomid){
    this.roomid = roomid;
}
}


解决方案

请尝试以下适配器......

 公共类MyAdapter延伸BaseAdapter {        上下文CON;
        ArrayList的<您的类型> mlist;
        RoomModel章附表;        公共MyAdapter(上下文CON,ArrayList的<您的类型> mlist)
        {
            this.con = CON;
            this.mlist = mlist;        }
        @覆盖
        公众诠释的getCount(){
            // TODO自动生成方法存根
            返回mlist.length;
        }        @覆盖
        公共对象的getItem(INT位置){
            // TODO自动生成方法存根
            返回mlist [位置]
        }        @覆盖
        众长getItemId(INT位置){
            // TODO自动生成方法存根
            返回的位置;
        }        @覆盖
        公共查看getView(INT位置,查看convertView,父母的ViewGroup){
            // TODO自动生成方法存根      章附表= mlist.get(位置);
        LayoutInflater吹气=(LayoutInflater)con.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.your_layout,父母,假);
        TextView的TV1 =(TextView中)convertView.findViewById(R.id.your_textview);
        tv1.setText(sched.getId());       TextView中TV2 =(TextView中)convertView.findViewById(R.id.your_textview);
        tv2.setText(sched.getName());       TextView的TV3 =(TextView中)convertView.findViewById(R.id.your_textview);
        tv3.setText(sched.getroomId());            返回convertView;
        }  }

和更改以下code。

  JSONArray房= jsonObject.getJSONArray(房间);
     的for(int i = 0; I< rooms.length();我++){
        的JSONObject室= rooms.getJSONObject(ⅰ);
       字符串名称= room.optString(房间);
       串roomid = room.optString(roomid);
      最后RoomModel章附表=新RoomModel();
       sched.setName(名);
       sched.setroomId(roomid);
    CustomListViewValues​​Arr.add(附表);}
ListView控件=(ListView控件)findViewById(R.id.C​​hatlistView);
MyAdapter适配器=新MyAdapter(这一点,CustomListViewValues​​Arr);
listView.setAdapter(适配器);

I need help to make listview adapter. Below is code please make the adapter both value name with roomid.

JSONArray rooms = jsonObject.getJSONArray("rooms");
     for (int i = 0; i < rooms.length(); i++) {
        JSONObject room = rooms.getJSONObject(i);
       String name = room.optString("room");
       String roomid = room.optString("roomid");
      final RoomModel sched = new RoomModel();
       sched.setName(name);
       sched.setroomId(roomid);
    CustomListViewValuesArr.add(sched);}        
listView = (ListView) findViewById(R.id.ChatlistView);

RoomModel.java

public class RoomModel {
    private  String name, id,  roomid;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}


public String getroomId() {
    return roomid;
}

public void setroomId(String roomid) {
    this.roomid = roomid;
}
}

解决方案

try the following Adapter......

    public class MyAdapter extends BaseAdapter {

        Context con;
        ArrayList<your type> mlist;
        RoomModel sched;

        public MyAdapter(Context con,ArrayList<your type> mlist )
        {
            this.con=con;
            this.mlist=mlist;

        }


        @Override
        public int getCount() {
            // TODO Auto-generated method stub
            return mlist.length;
        }

        @Override
        public Object getItem(int position) {
            // TODO Auto-generated method stub
            return mlist[position];
        }

        @Override
        public long getItemId(int position) {
            // TODO Auto-generated method stub
            return position;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            // TODO Auto-generated method stub

      sched=mlist.get(position);
        LayoutInflater inflater=(LayoutInflater)con.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView=inflater.inflate(R.layout.your_layout,parent,false);


        TextView tv1=(TextView)convertView.findViewById(R.id.your_textview);
        tv1.setText(sched.getId());

       TextView tv2=(TextView)convertView.findViewById(R.id.your_textview);
        tv2.setText(sched.getName());

       TextView tv3=(TextView)convertView.findViewById(R.id.your_textview);
        tv3.setText(sched.getroomId());

            return convertView;
        }

  }

and change the following code.

JSONArray rooms = jsonObject.getJSONArray("rooms");
     for (int i = 0; i < rooms.length(); i++) {
        JSONObject room = rooms.getJSONObject(i);
       String name = room.optString("room");
       String roomid = room.optString("roomid");
      final RoomModel sched = new RoomModel();
       sched.setName(name);
       sched.setroomId(roomid);
    CustomListViewValuesArr.add(sched);}        
listView = (ListView) findViewById(R.id.ChatlistView);
MyAdapter adapter=new MyAdapter(this,CustomListViewValuesArr);
listView.setAdapter(adapter);

这篇关于如何设置的ListView适配器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆