내 앱에 대해 Pulse 종류의 UI를 만들고 있습니다. 이를 위해 나는 클래스를 주어진 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
내 대답이 업데이트되었습니다. 나는 그것이 도움이 될지 의심 스럽다. 죄송합니다. 하하 – Akash
문제 없습니다. 나는 한번 시도해 보겠습니다! 학생입니까? – gauravsapiens