2016-03-22 14 views
1

Tekil bir desen uygulamaya çalışıyorum, ancak görüntü oluşturmak için Bitmap'i kullanmaya çalıştığımda, getResources() yöntemini çözemediğini söylüyor. Elime ulaşmaya çalıştığım bir örnek kod aşağıda bıraktım.Android Studio'da tekil bir desende BitmapFactory nasıl uygulanır?

private static Singleton instance = null; 
public static synchronized Singleton getInstance(){ 
    if(instance == null){ 
     instance = new Singleton (BitmapFactory.decodeResource(getResources(), R.drawable.singleton_image), 142, 90, 4); 
    } 
    return instance; 
} 

cevap

1

Bunu yapmak için çalışıyoruz bilmiyorum ama getResources() herhangi Bağlamında altından ulaşılabilen kamu yöntemi (Aktivite, Servisi) Bağlam miras alınan her şeydir.

Sen gibi olmak yöntemini düzenleyebilirsiniz bu

public static synchronized Singleton getInstance(Context context){ 
    if(instance == null){ 
     instance = new Singleton (BitmapFactory.decodeResource(context.getResources(), R.drawable.singleton_image), 142, 90, 4); 
    } 
    return instance; 
} 
+0

Zaten yapmaya çalıştık o bir hata alıyorum ancak bağlam uygulayamaz diyerek. Ben Singleton deseni uygulamak oluşturmak çalışıyorum Oyunumdaki ana oyuncu, ancak görüntüyü çizmeye çalıştığımda desen BitmapFactory'ın getResources() – Pikachu

+0

'u kullanmama izin vermiyor. Yöntemi nasıl çağırdınız? –

+0

getResources() yöntemi, Android Studio'ya yerleşik bir yöntemdir. Daha önce benzer bir kod kullandım ve işe yaradı çünkü Singleton modelini kullandım çünkü bu yöntemin çalışmadığını düşünüyorum. Bir alternatif aramaya çalışıyorum ama henüz bir tane bulamıyorum. – Pikachu