Adt Bundle Activityler oluşturma ve veri aktarımı (yeni)
İyi günler. Daha önceki derslerimde Eclipse ve eklentisini kullanmıştık. Bazı işlemler adt-bundle ile artık daha kolay yapılabiliyor.
Örneğin yeni bir activity oluşturma ve activity i çağırma. Bu uygulamayı yaparken bir de veri gönderelim…
Yeni bir android projesi oluşturalım…
File-New…
Next-next…
Adt-bundle ın güzelliklerinden. Özel bir icon oluşturalım…
Boş activity.
Activity layoutuna bir edittext bir de buton ekleyelim. Butonun adı btnGit, editTextinki de edtBilgi olsun.
İkinci aktivityimizi de oluşturalım.
Yeni activity adı Activity2. Activityimizi oluştururken hierarchical Parent adlı seçeneğe tıklayıp ana activitimizi seçersek actionbara geri düğmesi eklemektedir. Tıklanınca ana activitiye gider.
Bütün xml ayarları da bizim için yapılıyor… Finish…
Ana activity içerisinde aşağıdaki kodları yazıyorum. Bundle ile de edittextteki bilgiyi aktaracağım.
package com.ceylan.activityler; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { private Button btnGit; //tanımlamalar... private EditText edtBilgi; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnGit=(Button)findViewById(R.id.btnGit); //btngitin hangi layout elemanına ait olduğunu tanımlıyoruz. edtBilgi=(EditText)findViewById(R.id.edtBilgi); //edtBilgiyi tanımlıyoruz. final Bundle bundle=new Bundle(); //Veri aktarımı için Bundle tanımlıyoruz. btnGit.setOnClickListener(new View.OnClickListener() { //butona tıklandığında çalışacak metod. @Override public void onClick(View v) { // TODO Auto-generated method stub bundle.putString("veri", edtBilgi.getText().toString()); //bundle a edittextteki veriyi ekle Intent intent=new Intent(MainActivity.this,Activity2.class); //activity 2 ye giden intent intent.putExtras(bundle); //intente bundle bilgisini ekle startActivity(intent); //intent ile activitiyi çalıştır. } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
İkinci activity layoutu içerisindeki hello world yazısının idsini txtBilgi yapıyorum.
İkinci activity içerisindeki oncreate metoduna aşağıdaki satırları yazıyorum…
TextView sonuc=(TextView)findViewById(R.id.txtBilgi); Bundle bilgi=getIntent().getExtras(); sonuc.setText(bilgi.getString("veri"));
Programı çalıştıralım.
Git düğmesine tıklandığında;
Bilgiyi aldı ve diğer activity içerisine gönderdi. Actionbarda geri düğmesine de dikkat edin. Activity oluştururken yaptığımız ayardan dolayı çıkıyor. Ana activitye dönüşü sağlıyor.
Programın kaynak kodlarına
http://yadi.sk/d/lO2dVZboKVFG7
Adresinden ulaşabilirsiniz.
İyi çalışmalar.
Gelen arama terimleri:
- adt bundle