我有一个功能齐全的listview
(在ListFragment
中),其中包含自定义ArrayAdapter
。
适配器的布局包括imageview
,button
,gridview
和几个textviews
。
问题是listview在滚动时非常紧张。我已经实现了ViewHolder
模式,它稍微改善了性能
GridView
包含我在AsyncTask
中检索的联系人图像,还使用应用程序缓存来显示位图。
我还能做些什么来使listview
滚动顺畅?
我在适配器的getView
方法中使用了视图回收,如下所示
public View getView(int position, View convertView, ViewGroup parent) {
View myView;
holder = new ViewHolder();
if (convertView == null) {
inflater = (LayoutInflater) getContext().getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
myView = inflater.inflate(R.layout.events_list_activity, parent, false);
}
else {
myView = convertView;
}
}
答案 0 :(得分:1)
答案 1 :(得分:0)
1.收藏您的ViewItem层次结构&使用合并标签
2.实现ViewHolder模式,或使用androidannotation的注入功能
3.在另一个线程中重载。
答案 2 :(得分:-1)
它会为您提供从布局顶部滚动的内容,并且它还可以为您提供流畅的滚动体验。
mainScrollView=(ScrollView)findViewById(R.id.scrollview);
mainScrollView.smoothScrollTo(0, 0);
mainScrollView.fullScroll(mainScrollView.FOCUS_UP);