关于如何提高ListView的滚动速度的问题
答案:2 悬赏:70 手机版
解决时间 2021-01-29 09:36
- 提问者网友:临风不自傲
- 2021-01-28 21:28
关于如何提高ListView的滚动速度的问题
最佳答案
- 五星知识达人网友:封刀令
- 2021-01-28 21:34
View getView(int position,View convertView,ViewGroup parent){
//首先构建LayoutInflater
LayoutInflater factory = LayoutInflater.from(context);
View view = factory.inflate(R.layout.id,null);
//然后构建自己需要的组件
return view;}这样ListView的滚动速度其实是最慢的,因为adapter每次加载的时候都要重新构建LayoutInflater和所有你的组件。而下面的方法是相对比较好的:
View getView(int position,View contertView,ViewGroup parent){
//如果convertView为空,初始化convertView
if(convertView == null){
LayoutInflater factory = LayoutInfater.from(context);
convertView = factory.inflate(R.layout.id,null);}//然后定义你的组件
(TextView) convertView.findViewById(R.id.textid) ;
return convertView;}这样做的好处就是不用每次都重新构建convertView,基本上只有在加载第一个item时会创建convertView,这样就提高了adapter的加载速度,从而提高了ListView的滚动速度。而下面这种方法则是最好的:
//首先定义一个你 用到的组件的类:
static class ViewClass{
TextView textView;...}View getView(int position,View convertView,ViewGroup parent){
ViewClass view ;
if(convertView == null){
LayoutInflater factory = LayoutInflater.from(context);
convertView = factory.inflate(R.layout.id,null);
}
//首先构建LayoutInflater
LayoutInflater factory = LayoutInflater.from(context);
View view = factory.inflate(R.layout.id,null);
//然后构建自己需要的组件
return view;}这样ListView的滚动速度其实是最慢的,因为adapter每次加载的时候都要重新构建LayoutInflater和所有你的组件。而下面的方法是相对比较好的:
View getView(int position,View contertView,ViewGroup parent){
//如果convertView为空,初始化convertView
if(convertView == null){
LayoutInflater factory = LayoutInfater.from(context);
convertView = factory.inflate(R.layout.id,null);}//然后定义你的组件
(TextView) convertView.findViewById(R.id.textid) ;
return convertView;}这样做的好处就是不用每次都重新构建convertView,基本上只有在加载第一个item时会创建convertView,这样就提高了adapter的加载速度,从而提高了ListView的滚动速度。而下面这种方法则是最好的:
//首先定义一个你 用到的组件的类:
static class ViewClass{
TextView textView;...}View getView(int position,View convertView,ViewGroup parent){
ViewClass view ;
if(convertView == null){
LayoutInflater factory = LayoutInflater.from(context);
convertView = factory.inflate(R.layout.id,null);
}
全部回答
- 1楼网友:独钓一江月
- 2021-01-28 22:13
请问楼主,你的listview 滚动分页实现了没,我也遇到这个问题,请求帮助。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯