SORU
9 ŞUBAT 2013, CUMARTESİ


Uyarı SparseArray<Dize> yerine HashMap kullanmam gerektiğini söylüyor

Android gelişmekte olan yeni duyuyorum. Benim app HashMap kullanıyorum ama aşağıdaki uyarıyı alıyorum:

Bunun yerine daha iyi performans için SparseArray<String>(...) yeni bir kullanım

CEVAP
9 ŞUBAT 2013, CUMARTESİ


Kullanmak yerine yeni ve daha iyi performans için SparseArray<String>(...)

Nedeni here anlatılan nedenle bu uyarı alıyorsanız.

SparseArrays Nesnelere tamsayılar göster. Normal bir dizi aksine Nesneleri, indeksler boşluklar olabilir. Daha fazla olması için tasarlanmıştır Nesneleri göster Tamsayılar için bir HashMap kullanarak daha verimli.

Şimdi

nasıl ben SparseArray kullanmak ?

Yollar aşağıda bakabilirsin:

  1. HashMap yol:

    Map<Integer, Bitmap> _bitmapCache = new HashMap<Integer, Bitmap>();
    private void fillBitmapCache() {
         _bitmapCache.put(R.drawable.icon, BitmapFactory.decodeResource(getResources(), R.drawable.icon));
         _bitmapCache.put(R.drawable.abstrakt, BitmapFactory.decodeResource(getResources(), R.drawable.abstrakt));
         _bitmapCache.put(R.drawable.wallpaper, BitmapFactory.decodeResource(getResources(), R.drawable.wallpaper));
         _bitmapCache.put(R.drawable.scissors, BitmapFactory.decodeResource(getResources(), 
     }
    
    Bitmap bm = _bitmapCache.get(R.drawable.icon);
    
  2. SparseArray yol:

    SparseArray<Bitmap> _bitmapCache = new SparseArray<Bitmap>();
    private void fillBitmapCache() {
         _bitmapCache.put(R.drawable.icon, BitmapFactory.decodeResource(getResources(), R.drawable.icon));
         _bitmapCache.put(R.drawable.abstrakt, BitmapFactory.decodeResource(getResources(), R.drawable.abstrakt));
         _bitmapCache.put(R.drawable.wallpaper, BitmapFactory.decodeResource(getResources(), R.drawable.wallpaper));
         _bitmapCache.put(R.drawable.scissors, BitmapFactory.decodeResource(getResources(), 
     }
    
    Bitmap bm = _bitmapCache.get(R.drawable.icon);
    

Yardımcı olacağını umuyoruz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • engineerguy

    engineerguy

    10 Ocak 2010
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • William Sledd

    William Sled

    24 EYLÜL 2006