Soru & Cevap

buton kontrolü (denetimi)

23.04.2014 - 03:50

uygulama içinde birden fazla buton var. her bir butona basıldığında o butona sabit bir resim geliyor. 10 tane butonumuz 10 tanede resim var diyelim.

kullanıcı 1. butona bastıgında 1.resmi 

2. butona bastıgıda 2. resmi.....

ikinci sayfada göstermesini istiyorum. if lerler mi yapacagım?

2.sorum da: her butonun java dosyasında her basıldıgında yapmasını istediğimiz kod bütününü örneklermisiniz

 

iyi çalışmalar...

328 Görüntülenme

2 Cevap

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

picture-20467-1455707757.jpg
byyasin
23.04.2014 - 11:36

Yorum kısmına yazdım ama düzgün görünmedi o yüzden cevap olarak da ekliyorum.


Aynı mantıkla dediğiniz şey de olur.
Diğer activitye veri gönderirken istediğiniz kadar parametre ekleyebilirsiniz.
Örneğin ikinci sayfayı açan butonlarınıza tıklanıncaki onclick metoduna 
// butona tıklandığında yapılacak işlemler yazan yere şu şekilde bir kod ekliceksiniz.

[code]Intent i = new Intent(butonlarinOlduguActivity.this, tiklayincaAcilacakActivity.class);    
  i.putExtra("SarkiAdi","Rihanna - .... ");
  i.putExtra("SarkiUrl","muzikadresilinki.mp3");
  startActivity(i);[/code]
Bu kod ile ikinci sayfayı açtıktan sonra ikinci sayfanızdaki onCreate içinde şu kodlar yer alması lazım

   

[code]
@Override
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.sizinLayoutDosyaniz);
    Bundle extras = intent.getExtras();
    if(extras != null){
        String strSarkiAdi = extras.getString("SarkiAdi");
        String strSarkiUrl = extras.getString("SarkiUrl");
        // Bu stringleride istediğiniz gibi kullanabilirsiniz. textView e setText gibi mediaPlayere play v.s. gbi burada tanımlayıp gerekli işmleri yapabilirsiniz.
    }
 }[/code]

Yasin
24.04.2014 - 09:32
rica ederim..
picture-20467-1455707757.jpg
byyasin
23.04.2014 - 06:19

Bunu yapmanın bir kaç yolu var, tek onClick tanımlayıp hepsini içinde if ile kontrol edebilirsiniz

Fakat en çok tercih edileni her buton için ayrı ayrı onClick tanımlamanızdır bu kafa karışıklığının önüne geçer fakat biraz fazla kod yazarsınız.

Örnek buton tıklama kodu; Ders Ekleme butonumuz olduğunu ve kimliğininde

android:id = @+id/btn_ders_ekle olduğunu varsayalım bu halde onCreate içindeki kodlar şu şekilde olmalı

[code]

Button btn_ders_ekle = (Button) findViewById(R.id.btn_ders_ekle);
btn_ders_ekle.setOnClickListener(new View.OnClickListener() {       
@Override
    public void onClick(View arg0) {
        // butona tıklandığında yapılacak işlemler
    }
});
Button btn_ders_ekle2 = (Button) findViewById(R.id.btn_ders_ekle2);
btn_ders_ekle2.setOnClickListener(new View.OnClickListener() {       
@Override
    public void onClick(View arg0) {
        // 2. butona tıklandığında yapılacak işlemler 
    }
});

// böyle böyle istediğiniz kadar ekleyebilirsiniz

[/code]

 

ikinci sayfada resimi göstermek istiyorsanız resim gösteren bir activity hazırlayacaksınız.

butona tıklayınca yapılacak işlemler kısmında intent extra ile açılacak resim bilgilerini göndereceksiniz

ikinci sayfadaki onCreate kısmında bundle.extra ile değerleri alıp gerekli resimin gösterilmesini sağlayacaksınız.

Yasin
23.04.2014 - 11:34
Aynı mantıkla dediğiniz şey de olur. Diğer activitye veri gönderirken istediğiniz kadar parametre ekleyebilirsiniz. Örneğin ikinci sayfayı açan butonlarınıza tıklanıncaki onclick metoduna // butona tıklandığında yapılacak işlemler yazan yere şu şekilde bir kod ekliceksiniz. Intent i = new Intent(butonlarinOlduguActivity.this, tiklayincaAcilacakActivity.class); String keyIdentifer = null; i.putExtra("SarkiAdi","Rihanna - .... "); i.putExtra("SarkiUrl","http://www.sitesmi.com/rihanna.mp3"); startActivity(i); Bu kod ile ikinci sayfayı açtıktan sonra ikinci sayfanızdaki onCreate içinde şu kodlar yer alması lazım @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.sizinLayoutDosyaniz); Bundle extras = intent.getExtras(); if(extras != null){ String strSarkiAdi = extras.getString("SarkiAdi"); String strSarkiUrl = extras.getString("SarkiUrl"); // Bu stringleride istediğiniz gibi kullanabilirsiniz. textView e setText gibi mediaPlayere play v.s. gbi burada tanımlayıp gerekli işmleri yapabilirsiniz. }