我正在爲我的應用程序製作Pulse類型的UI。爲此,我使用HorizontalListView
類作爲here。然而,這門課有性能問題,並且會有明顯的滯後。HorizontalListView性能問題:調用每個子視圖的膨脹
爲了證實這一點,我估計它使用TraceView Profiler
,發現此類不完全重複使用的意見和要求內getView()
每次調用inflate()
方法。
這裏是如何我設計的適配器:
public View getView(final int position, View convertView, ViewGroup parent) {
final BaseAssets baseAsset = baseAssetsList.get(position);
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = inflater.inflate(R.layout.gallery_list_item, parent, false);
viewHolder.newLabel = (ImageView) convertView.findViewById(R.id.iv_new);
viewHolder.assetImage = (ImageView) convertView.findViewById(R.id.iv_thumbnail);
convertView.setTag(viewHolder);
} else
viewHolder = (ViewHolder) convertView.getTag();
}
class ViewHolder {
ImageView newLabel;
ImageView assetImage;
}
上午我做錯了什麼?如果沒有,請建議我解決方法以提高性能。可能還有其他一些庫,您可能會嘗試或以任何方式重用當前庫中的視圖。謝謝 !
我真的很抱歉。爲了簡化我的代碼,我刪除了該行。在我的實際代碼中。道歉混亂! – gauravsapiens 2013-05-06 05:37:15
更新了我的答案。我懷疑它會幫助。對不起哈哈 – Akash 2013-05-06 09:27:37
沒問題..我會試一試! 你是學生嗎? – gauravsapiens 2013-05-06 09:56:54