2011-09-15 3 views
0

동일한 것을하는 두 가지 방법을 보았습니다. 무엇이 더 빠르며 더 좋으며 무엇이 다른지 모릅니다. . . 차이가홀더 패턴이 다름과 성능 비교에 접근했습니다

내가 구걸에서만이 몇 행을 의미하며, 다른 모든 동일하지만, 여전히 두 가지 방법이있다 나는 다른 무엇인지 이해하지 않고하는 방법은

빠른 경우 하나입니다

public View getView(int position, View convertView,ViewGroup parent) { 
    View row=super.getView(position, convertView, parent); 
    ViewHolder holder=(ViewHolder)row.getTag(); 

경우이 : :-)

public View getView(int position, View convertView,ViewGroup parent) { 
     //of course some checks if the convertView is null, but that is not the point 
    ViewHolder holder=(ViewHolder)convertView.getTag(); 

하나 이상의 하위 질문 어떻게 빨리 무엇을 테스트 할 수 있습니다? 어댑터 성능 테스트를 어떻게해야합니까? 내가 다른 이해와 방법하지 않는

감사

답변

0

은 첫 번째는 슈퍼 클래스에 체인되는 어떤 다른 것은

빠른이고, 두 번째는 없습니다.

더 빠르게 무엇을 테스트 할 수 있습니까? 어댑터 성능 테스트를 어떻게해야합니까?

Traceview을 사용하십시오.

+0

체인 연결 중 예 행에 대한 뷰에 대한 참조를 얻습니다. 그리고 convertView에 대한 참조를 얻음으로써 나는 같은 생각이라고 생각한다. 나는 같은 참조를 의미 하는가, 아니면 틀린가? – Lukap

+0

@Luk : 수퍼 클래스에 체인을 연결하면 수퍼 클래스에서 제공하는 것을 얻게됩니다. 그것이'convertView'인지 또는 다른 것이 슈퍼 클래스에 달려 있습니다. "그리고 convertView에 대한 참조를 얻음으로써 나는 같다고 생각합니다 - 반드시'convertView'가 때때로'null'이기 때문에. – CommonsWare

관련 문제