listview

作者在 2015-07-07 08:28:15 发布以下内容
listview 特性:批量显示数据结构相同式者相近的数据。 以列表形式显示内容。 每行结构相似。 作用:批量展示信息。滑动显示。 listiview 组合控件; 普通控件:内容跟控件是在同一对象里面。 如:文本框等 组合控件:内容跟控件不在一个对象里面。 如: listview的原理: UI 内容: listview控件: Adapter适配器: 框和行分隔 行布局和行内容 使用步骤: 1、在activity的布局文件里面。创建一个listview控件 注意:listview的高度要设置成match_pratent. 2、创建一个行布局文件 3、在activity里面找到这个listview控件对象。 4、初始化数据 为arraylist添加数据 5、设置适配器 listvie.setAdapter(适配器对象) class MyAdapter extends BaseAdapter {//设置行布局跟行内容 @Override public View getView(int position, View convertView, ViewGroup parent) { //得到一个布局转换器 LayoutInflater inflater = getLayoutInflater(); //把布局文件转换成布局对象(每调用一次getview就创建一个新的对象) RelativeLayout layout = (RelativeLayout) inflater.inflate(R.layout.item_list, null); //查找当前行的布局对象里面控件对象 TextView textView = (TextView) layout.findViewById(R.id.textView1); //查找当前行对应的消息内容 String string = arrayList.get(position); //把消息设置到当前行的textview上面 textView.setText(string); Log.e("MyAdapter", "getView:" + layout + "--" + position); //把设置完成的行布局对象显示出来 return layout; } //决定listview的行数 @Override public int getCount() { return arrayList.size(); } } //position : 行号,从零开始 //convertView保存完全消失的行布局对像 一般 在优化的时候会用到, //ViewGroup parent 组 现在还不会用到,只有到切片的时候才会用到 listview的优化技巧: 1、复用行布局对象 convertview if(convertView == null) { //得到一个布局转换器 LayoutInflater inflater = getLayoutInflater(); //把布局文件转换成布局对象(每调用一次getview就创建一个新的对象) layout = (RelativeLayout) inflater.inflate(R.layout.item_list, null); } else { layout = (RelativeLayout) convertView; } // 为listview注册上下文菜单 registerForContextMenu(listView); // 设置listview的长按点击监听 listView.setOnItemLongClickListener(this); //position : 行号,从零开始
默认分类 | 阅读 1297 次
文章评论,共0条
游客请输入验证码
文章分类
最新评论