About Intent in Android


Intent: Türkçe’ de niyet, maksat anlamlarına gelmektedir. Yani siz sisteme ben şunu istiyorum diyorsunuz o da sizin önünüze ekran olarak sunuyor.

Intent denince bir çok uygulama ekranı aklınıza gelebilir. Örnek olarak:

  • ACTION CALL – Telefon görüşmesi başlatır.
  • ACTION EDIT – Düzenlemek için kullanıcı verileri gösterir.
  • ACTION VIEW – Kullanıcı verilerini gösterir.
  • ACTION PICK – İlgili veriyi alır.
  • ACTION SEND – Bazı verileri kullanıcılara ulaştırır.

Bir Activity’ yi başlatmak için Intent oluşturmamız ve ardından startActivity() metodunu çağırmamız yeterli olacaktır.

Intent intent = new Intent(this, OtherActivity.class);
startActivity(intent);

Bir Intent objesi aşağıdakilerden bazılarını içerebilir:

  • Component Name, Action, Data, Category, Extras, Flags

Boş bir Intent çağırma:

Intent myIntent = new Intent();

Veya, bir action ismi verme, yukarıda saydığımız ekranlar gibi:

Intent myIntent = new Intent(Intent.ACTION BLAHBLAH);

Veya, başka bir class a yönlendirme, başka bir sayfanın açılması gibi:

Intent myIntent = new Intent(this, MyActivity.class);

NOT: Tüm bunlar tamam olup da hata alabilirsiniz eğer AndroidManifest.xml dosyasına açmak istediğiniz Activity’ yi belirtmediyseniz!

DATA Kullanımı:

Intent callIntent = new Intent(
Intent.ACTION DIAL, Uri.parse("tel:5551234"));
Intent mapIntent = new Intent(
Intent.ACTION VIEW, Uri.parse("geo:0,0?q=Balcova, Izmir"));
Intent mapIntent = new Intent(
Intent.ACTION VIEW, Uri.parse("geo:37.4222,-122.083?z=14"));
Intent webIntent = new Intent(
Intent.ACTION VIEW, Uri.parse("http://www.android.com"));

PARSING DATA Kullanımı:
Bir uygulama düşünelim ActivityX ve ActivityY olsun. X’ ten Y’ ye veri aktarmamız gerekiyor. İşte bunun için var olan Intent’ imize putExtra yardımı ile veri eklememiz gerekecek. 2 parametre olacak. 1.si keyword, 2.si ise String veri yani ne göndermek istiyorsak o.

Intent i = new Intent(this, MyActivity.class)
.putExtra("userName", "An")
.putExtra("userSurname", "droid");

startActivity(i);

Diğer sayfada, (verileri gönderdiğimiz sayfada) bu verileri çekmek için:

Intent i = getIntent();
String userName = i.getStringExtra("userName");
String userSurname = i.getStringExtra("userSurname");

EXTRA KULLANIMI:

Intent emailIntent = new Intent(Intent.ACTION SEND);
emailIntent.setType(HTTP.PLAIN TEXT TYPE);
emailIntent.putExtra(Intent.EXTRA EMAIL, new String[] "jon@example.com")
emailIntent.putExtra(Intent.EXTRA SUBJECT, "Email subject");
emailIntent.putExtra(Intent.EXTRA TEXT, "Email message text");
emailIntent.putExtra(Intent.EXTRA STREAM, Uri.parse("content://path to attachment");
Reklamlar

22 Eyl 2012 tarihinde Android içinde yayınlandı ve , , , , , olarak etiketlendi. Kalıcı bağlantıyı yer imlerinize ekleyin. Yorum yapın.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: