Şu anda Google Rehber API'sini kullanan bir android uygulama geliştiriyorum.Amaçları kullanarak değişkenleri geçirme - Android
Aralarında bir değişkeni geçmek istediğim 2 etkinliğim var. PutExtras ve getExtras kullanarak Intent tarafından geçmeyi denedim.
GetExtras ile ilgili sorunlar yaşıyorum. Kodumu hata ayıkladım, kesme noktalarını ve değişkenin çıktısını günlüğe kullandım.
Intent mapIntent = new Intent(getBaseContext(), MapsActivity.class);
Spinner distanceSpinner = (Spinner) findViewById(R.id.spinner_distance);
String radius = distanceSpinner.getSelectedItem().toString();
mapIntent.putExtra("radius", radius);
Log.e("Passer", String.valueOf(radius)); //Shows that value is not = null.
startActivity(mapIntent);
dışarı bu sınıf için koymak günlük doğrudur ve değişken görüntüler:
İşte gelen değişken geçirmek istediğiniz aktivitesi için benim kodudur. Bu sınıf için
Intent filterIntent = new Intent(getBaseContext(), LocateFilterActivity.class);
Bundle bd = filterIntent.getExtras();
String radius= (String) bd.get("radius");
Log.e("TESTER", String.valueOf(radius));
startActivity(placeIntent);
günlük yok aslında çıkış şey: Burada
Ben değişkeni iletmek istediğimiz Dersim için kodudur. Hata ayıklama yoluyla kod satırına erişip çalıştırabileceğini biliyorum.Önceki SO sorularını/yanıtlarını izleyerek çok fazla şansa sahip olmamanızı birkaç farklı yolla kodlamayı denedim.
Herhangi bir yardım çok takdir :)
Eğer startActivity ile oluşturduğunuz yeni oluşturulan bir etkinlikte çağırabilir
Yanlış niyet verisine erişmeye çalışıyorsunuz – Rustam
Olası çoğaltılabilir [Android'deki etkinlikler arasında veri aktarmak için amaçların kullanılması] (http://stackoverflow.com/questions/19286970/using-intents-to-pass-data -buradaki-etkinlik-android) –
'getIntent(). getStringExtra ("radius"); 'FindFilterActivity' etkinliğinizde onCreate()' yöntemini deneyin. – Rustam