ListView初级入门

来源:互联网 发布:iphone投影到mac 编辑:程序博客网 时间:2024/06/05 05:35
package com.example.zhongtao.day04;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ListView;import android.widget.TextView;/** * ListView不可以使用wrap_content 会造成getView()频繁调用 */public class MainActivity extends AppCompatActivity {    private ListView listView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        listView=(ListView)findViewById(R.id.list);        listView.setAdapter(new MyAdapter());    }    private class MyAdapter extends BaseAdapter{        /**         * @return         * 返回值决定了当前的listview究竟展示多少个条目         * 如果过多会造成内存溢出,虚拟机回收内存来不及这时就要做处理         */        @Override        public int getCount() {            return 5;        }        @Override        public Object getItem(int position) {            return null;        }        @Override        public long getItemId(int position) {            return 0;        }        /**         * @param position         * @param convertView         * @param parent         * @return         *         */        @Override        public View getView(int position, View convertView, ViewGroup parent) {            TextView textView=null;            if (convertView == null) {                //说明没有可重用的View对象 创建新对象                System.out.println("创建的对象"+position);                textView = new TextView(MainActivity.this);            } else {                //当前的convertView可以被重新使用  重用旧对象                System.out.println("重用的对象"+position);                textView=(TextView) convertView;            }            //给textView设置值            textView.setText("我是第"+position+"条目");            return textView;        }    }}
0 0
原创粉丝点击