android的adapter的大致使用过程
来源:互联网 发布:淘宝促销活动报名 编辑:程序博客网 时间:2024/05/21 15:41
1.布局文件
<ListView android:id="@+id/mesList" android:layout_width="match_parent" android:layout_height="wrap_content">
</ListView>
2.调用Adapter处的写法
messages = MessageSQL.getListMessages();mesList = (ListView) view.findViewById(R.id.mesList);//调用布局messageListAdapter = new MessageListAdapter(getActivity(), messages);mesList.setAdapter(messageListAdapter);
//列表设置点击事件mesList.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String username = messages.get(position).getFromwho(); Intent intent = new Intent(view.getContext(), ChatDetailActivity.class); intent.putExtra("username", username); startActivity(intent); //动画 ((Activity) view.getContext()).overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left); }});
3.adapter处的写法(大致用法,写的不好。)
public class MessageListAdapter extends ArrayAdapter<Message> { Context context; List<Message> messages; public MessageListAdapter(Context context, List<Message> messages) { super(context, R.layout.message_item, messages); this.context = context; this.messages = messages; } @Override public int getCount() { if (messages != null) { return messages.size(); } return 0; } @Override public Message getItem(int position) { if (messages != null) { return messages.get(position); } return null; } @Override public long getItemId(int position) { if (messages != null) { return messages.get(position).hashCode(); } return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; ViewHold hode = null; if (v == null) { hode = new ViewHold(); LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inflater.inflate(R.layout.message_item, null); hode.heap = (ImageView) v.findViewById(R.id.heap); hode.username = (TextView) v.findViewById(R.id.username); hode.msg = (TextView) v.findViewById(R.id.msg); hode.time = (TextView) v.findViewById(R.id.time); hode.message_unread = (TextView) v.findViewById(R.id.message_unread); v.setTag(hode); } else { hode = (ViewHold) v.getTag(); } Message message = getItem(position); String name = message.getFromwho(); hode.username.setText(name); hode.msg.setText(message.getMsg()); hode.time.setText(Utils.dateToRead(message.getDate(), 0)); return v; } public void setMessages(List<Message> messages) { this.messages = messages; } private class ViewHold { ImageView heap; TextView username; TextView msg; TextView time; TextView message_unread; }}
0 0
- android的adapter的大致使用过程
- Android adapter的使用
- android- adapter 的使用
- Android Adapter的使用
- Android - Adapter的使用
- V8编译的大致过程
- android handler 消息更新UI的大致过程
- Android适配器Adapter的使用
- android使用自定义的adapter
- Android内核的大致分析
- Android启动的大致分析
- 使用Handler的大致流程
- 浏览器访问一个页面的大致过程
- 一次MySQL查询的大致过程
- 复印机的工作过程大致如下
- android recyclerView adapter 的 itemType的使用
- 使用MQ的触发器机制的大致原理及过程如下
- Android ListView的自己adapter使用
- mac10.9 安装pycapnp 错误解决
- Java关键字——super、this
- 11.可选类型(间接拆包)
- 【PHP进阶篇 未完】6.会话控制(session与cookie)--慕课网【学习总结】
- 回溯算法之骑士旅行问题
- android的adapter的大致使用过程
- matlab常用命令
- Android tombstone分析 升级篇
- Python学习(一)
- Android中的主题和样式及自定义控件构造参数
- Python学习(二)
- XML——流机制解析器
- vim中复制粘贴
- Codeforces 617E:XOR and Favorite Number 莫队算法