Menü

Android Activity’ler Arası Veri Aktarımı

24 Ocak 2015 - Android & IOS

data-transportation

Android programlama’da bir ekrandan başka bir ekrana veri aktarmak istiyorsanız bunu bundle’lar ile gerçekleştirebilirsiniz. Gayet basit bir işlem ancak yanlış kullanımlarda veya birazdan bahsedeceğim şekilde kullanımlarda hata verebilmektedir. Bir activity’den başka bir activity’ye veri aktarırken;

Veriyi nereden aktaracaksanız o activity içerisinde;(Ben Main’den başka bir activity’e aktaracağım.)

public class MainActivity extends Activity {
Button btnsifre;
private Intent intent;
private Bundle bundle;

protected void onCreate(Bundle savedInstanceState) {

//Bu kısma dikkat! Intent içerisinin aşağıdaki gibi olmasına dikkat edin. Eğer Intent içerisi (“com.example.xxx.xxx”)

//şeklindeyse hata verebilmektedir.

intent = new Intent(getApplicationContext(),SifreOlustur.class);
bundle = new Bundle();

//Şimdi hangi olay ile verinin gönderilmesini istiyorsak oraya geçiş işlemini ve devamındaki kodları yazıyoruz.

btnsifre=(Button)findViewById(R.id.button1);
btnsifre.setOnClickListener(new OnClickListener(){

@Override
public void onClick(View arg0) {
bundle.putString(“gonderilen”, “Main’den geliyorum”);
intent.putExtras(bundle);
startActivity(intent);

}});

}

}

Veriyi nereye göndereceksiniz? (Ben SifreOlustur activity’e göndereceğim.)

Gelen veriyi nerede kullanacaksanız. Aşağıdaki kodu OnCreate veya her nerde kullanmak istiyorsanız oraya yapıştırın. Gelen isimli string tipindeki veriniz “Main’den geliyorum” olacaktır.

public class SifreOlustur extends Activity{

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.sifreolustur);

Bundle veri = getIntent().getExtras();
String gelen = veri.getString(“gonderilen”);

//Gelen veriyi Toast Mesajı ile gösterelim.

Toast.makeText(getApplicationContext(), gelen, Toast.LENGTH_SHORT).show();

}

}

Bir Cevap Yazın