Listviewımızı oluşturduk ama şuan için performans sorunları yaşanmakta.
Yapacağımız optimizasyonlarla daha hızlı ve efektif çalışan bir listview’a sahip olabiliriz.
Bunlardan ilki olan Object recycling yani nesnelerin tekrar kullanılmasını anlattığım bu derste, listview performansımız %150 olarak artmış olacak.
Evet yazılan 2 satır kod ve düzenlemeyle böyle bir performans artışı sağlanabilmekte.
Uygulamanın tüm kodları için tıklayın….
getView methodunda yapılan değişikliklerden sonraki son hali :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
@NonNull @Override public View getView(int position, View convertView, ViewGroup parent) { View tek_Satir=convertView; if(convertView==null){ LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); tek_satir = inflater.inflate(R.layout.tek_satir, parent, false); } ImageView img_teksatir =(ImageView) tek_satir.findViewById(R.id.imageView); TextView ulkeAdi_teksatir= (TextView) tek_satir.findViewById(R.id.textView); TextView ulkeTanim_teksatir= (TextView) tek_satir.findViewById(R.id.textView2); img_teksatir.setImageResource(resimler[position]); ulkeAdi_teksatir.setText(ulkeAdlari[position]); ulkeTanim_teksati.setText(ulkeTanimlari[position]); return tek_satir; } |