Turkcell | Geleceği Yazanlar

Soru & Cevap

MainActivity Context Aktarımı

30.11.2013 - 15:44

Merhaba,

MainActivity'nin context'ini başka bir class'ımda tanımlı olan metoduma parametre olarak geçtiğimde null değer döndürüyor, context i alamıyorum bu sorunu nasıl çözebilirim?

Ör: public getContext(Context context){

context --> Null

}

3933 Görüntülenme

4 Cevap

Anıl SÖZERİ
01.12.2013 - 00:25

- Söylediğiniz gibi denemiştim ilk başta fakat MainActivity.this olarak yolladığımda parametre olarak kabul etmiyor . O nedenle zaten ekstra bir değişkende tutmaya ihtiyaç duydum.

- Sınıfımda context i set etmiyorum sadece MainActivity'deki context'ime ulaşmam gerekiyor yukarıda da zaten ApplicationContext() olarak gönderdim ama yine de sorunuma çözüm bulamadım, başka bir nedenden kaynaklanıyor olabilir mi acaba?

- İnternette bu konuda sormadan önce biraz araştırma yaptım genelde buffer yani tampon sınıf kullanın vs. tarzında önerilerde bulunulmuş ama henüz kesin bir çözüme ulaşamadım bu şekilde yapamazsam daha dinamik bir yapıda olmasını istesemde mecburen projemi tek class üzerinden çalıştıracağım.

 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Yasin Kafadar
30.11.2013 - 22:15

- Activity içinde context diye ayrı bir değişken tutmana bence gerek yok. MainActivity.this şeklinde activity'nin referansını da gönderebilirsin.

- Eğer alertNoGpsA sınıfında context'ini bir kere set edip tutuyorsan getApplicationContext() göndermeni tavsiye ederim. Bu method'dan dönen context global application'ının context'i oluyor. 

 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Anıl SÖZERİ
30.11.2013 - 19:04

public class MainActivity extends FragmentActivity {

    private Context context;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        this.setContext(this.getApplicationContext());
    }

public Context getContext() {
        return context;
    }

    public void setContext(Context context) {
        this.context = context;
    }

 

alertNoGpsA.alertNoGps(context);

context, alertNoGpsA class'ımdan türettiğim alertNoGps in Context tipinden aldığı parametre ben buraya MainActivity'nin Context'ini vermek istiyorum getContext() metodunu kullandığımda null değer döndürüyor.

 
 
CTRL + Q to Enable/Disable GoPhoto.it

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Yasin Kafadar
30.11.2013 - 18:27

Selam Anıl, getContext metodunu nasıl cagirdigini tam olarak yazabilir misin? Sorunu tam olarak anlamamız için MainActivity ve getContext metodunun tanımlı olduğu class i paylaşabilir misin?

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.