我有一個Android ListView
,它每隔一秒左右就會有一個小的(比如說1-5幀)斷續,因爲它正在滾動。我意識到很多Android手機在動畫平滑度方面存在這些問題,但是,在我的手機(運行Android 2.2的摩托羅拉A855)上,本地聯繫人列表滾動得非常順利。在聯繫人列表中的項目視圖比我的列表中的項目來看,這是比較複雜的:改善Android ListView中的滾動平滑度
<RelativeLayout>
<TextView />
<TextView />
</RelativeLayout>
我只是想實現平滑的本地聯繫人列表一樣好。看起來,這應該是可能的,而不是優化本地代碼,但也許我錯了。
我已經嘗試了幾件事情:我進一步簡化了項目視圖,並試圖以編程方式實例化它而不是使用XML。我也試圖改變我對項目的點擊事件作出反應的方式,按照這個鏈接:
http://groups.google.com/group/android-developers/browse_thread/thread/7dc261a6b382ea74?pli=1
這些事情沒有人可以對性能有任何影響。
有什麼我可以在我的應用程序來提高性能?我正在考慮將此應用程序部署到多個手機,因此更改手機設置或設備生根不是我的選擇。這裏是我的適配器類的getView方法:
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater flater = (LayoutInflater)context.getSystemService(ListActivity.LAYOUT_INFLATER_SERVICE);
layout = flater.inflate(R.layout.song_view, parent, false);
TextView first = (TextView)layout.findViewById(R.id.firstLine);
TextView second = (TextView)layout.findViewById(R.id.secondLine);
Thing t = array.get(position);
first.setText(t.title);
second.setText(t.name);
return layout;
}
在此先感謝!
提供了有關您的適配器的一些信息 – Selvin 2011-06-09 13:55:56
您應該至少閱讀官方的Android指南。 它被稱爲Viewholder模式。 – Singgum3b 2013-12-01 13:00:52