Intent ile Veri Transferi

* Merhaba arkdaslar , bu yazımızda Activity’ler arasında veri transferini gorecegiz . Bir önceki yazımda intent nesnesi ile nasıl Activity(sayfalar) arasında geçiş yapılacagından söz etmiştim .

* Bugünkü konumuza gelirsek eğer ; Bugun 2 Activity arasında nasıl veri tasınır , genel ana tema bu olacak arkadaslar . Hemen yapacagımız işin senaryosuna goz atalım . İlk sayfamızda 2 tane EditText olacak ve buna kullanıcı Ad ve Soyad yazıp butona basıcak . Bizde bu bilgileri alıp , diğer bir sayfaya geçiş yaparak bilgilerini gosterecegiz . Yine basit bir senaryo olacak arkadaslar

* Hemen proje çıktısını eklemekte fayda göruyorum .

 

 

 

* Evet arkadaslar çıktımız yukarıdakı resimler gibi olacak . İlk layoutumuzda 2 TextView  , 2 EditText ve 1 Buton bulunmakta . İkinci sayfamızda ise 4 tane TextView var . Bunların nasıl olusturulacagını daha onceden anlatmıstım , şimdi burayı pas geçiyorum . * MainActivity.java dosyamıza bir göz atalım ;

 


 

* Neler yapmışız bir bakalım ;

  1. Öncelikle EditText kutucuklarımızı ve Button’umuzu tanımlamışız . TextView’ler ile bir işimiz olmadıgı icin onları deklare etmiyoruz arkadaslar .
  2. Button ve EditText’ler ile iletişime geciyoruz .
  3. Butonumuzun click olayını dinliyoruz .
  4. Sırada , String name ve surName adlı degiskenler var . EditText kutucuklarımıza yazılan verileri bu degiskenlere atıyoruz arkadaslar .
  5. Intent nesnemizi olusturduk ve bulundugumuz class’ı ve gidecegimiz class’ın adını verdik parametre olarak .
  6. Evet geldik önemli kısıma . Intent nesnemize putExtra() methodu ile veri yükleme işlemi yapıyoruz arkadaslar . Bu method 2 tane parametre alıyor . İlk parametre bizim anahtar degerimiz , yani diğer sınıfta bu degere gore cagırıcaz . İlk parametre tasımak istedigimiz veriyi temsil eden bir anahtar . İkinci parametre ise gondermek istedigimiz veri oluyor . Bu ornekte “name” adlı anahtarımız “Mert” , “surname” anahtarı da “Celtkikoglu” verilerini tutuyor .
  7. Son olarak da Activity’mizi baslatıyoruz . İntent konusunda sıkıntı var ise yazının basında verdigim adresten faydalanmanızda yarar var .
* Evet arkadaslar gelelim , ikinci sınıfımıza . Yeni bir Activity olusturuyoruz arkadaslar . Bunu da daha once yazmıstım . Bu yazıda bol bol eski yazılara gonderimde bulundugumun farkındayım arkadaslar kusura bakmayın

 

* InfoPerson sınıfımızı olusturduk arkadaslar ve second_page adlı layoutumuzuda yukledik .Şimdi neler yapmışız bir bakalım ;
  1. 2 Adet TextView tanımladık . Bunlar ilk sınıftan gelicek olan ad ve soyad verileri için olacak.
  2. TextView^ler ile iletişime gectik .
  3. Evet tekrar önemli bir kısıma geldik arkadaslar . Yeni bir intent nesnesi olusturuyoruz ve bunu getIntent() methodu ile tanımlıyoruz . getIntent() methodu sınıfın çağrıldıgı intent’i almamızı saglıyor (İlk sınıftaki olusturdugumuz intent nesnesine karsılık geliyor. ) .
  4. Daha sonra bir Bundle nesnesi olusturuyoruz . intent nesnemizin getExtras() methodu ile intent’mizin üzerinde taşıdıgı verileri alıyoruz (Bu ornek icin ad ve soyad tasıyor intent^imiz .) .
  5. Sırada 2 adet String nesnemiz var arkadaslar . name adlı String degiskeni bundle.getString(“name”) ile alıyoruz arkadaslar . Burada dikkat etmemiz gereken nokta bir önceki Activity^de kullandıgımız intent nesnesinin putExtra(“name”) parametlerinin aynı olması . Yani hangi anahtar kelime ile yoladıysak diger tarafda da aynı anahtar kelime ile çagırıyoruz.Surname icin de aynı seyler gecerli arkadaslar .
  6. Son olarak TextView nesnelerime aldıgımız ad ve soyad verilerini setText() methodu ile yazıyoruz .
* Biraz trick bilgiler verelim arkadaslar . Intent nesnemize yukledigimiz putExtra() methoduna parametre olarak primitif(int , char , double vs.) degiskenler ekleyebiliyoruz. Bunun tek istisnası String nesnesi ekleyebiliyor olmamız . Peki nasıl başka bir sayfaya nesne yollayabiliriz ? . Bunun cevabını daha sonra vericez arkadaslar . Şimdilik Parcelable .interface’ini implement edip bir takım manipülasyon yapmamız lazım , bunlar için . Şimdilik oraya fazla takılmayalım . Orayı ilerde anlatıcam insaAllah .
* Yazımızın sonuna geldik arkadaslar , umarım açıklayabilmişimdir . Eğer sıkıntı olan noktalar var ise lütfen belirtiniz çünkü her yazıda öğrendigimiz bir şeyi sonraki yazılarda da kullanıcaz . Bastan saglam gitmekte fayda var
* Programı buradan indirebilir , inceleyebilirsiniz arkadaslar .
*ve mâ tevfîkî illâ billâh(billâhi), aleyhi tevekkeltu ve ileyhi unîb(unîbu) / Benim başarım ancak Allah iledir. Ben, O’na tevekkül ettim ve O’na yöneldim.
 
* Mutlu kalın , Kod’la kalın ve bol bol çay için

* Ucuz konuşma , Çay demle . ~Alican Torvalds . * Bir sonraki yazıda görüşmek üzere . ~Alican Akkuş

1110 Total Views 1 Views Today