Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net

Anasayfa - Makale - Pratik - Android Programlama Ders 19: İkinci etkileşimi (Activity) Oluşturuyoruz

Android Programlama Ders 19: İkinci etkileşimi (Activity) Oluşturuyoruz

4 Ekim 2013 - 09:30
- Mobil, Pratik

Android programlama öğrenmeye devam ediyoruz. Bu derste ikinci etkileşimi (Activity)  oluşturmayı öğreneceğiz.

Geçen derslerimizde uygulamalarda tek etkileşimi kullanıyorduk. Normalde Android uygulamalarda birden fazla etkileşim kullanılıyor.

Yeni bir proje oluşturalım:

  • Project name: P0019_TwoActivity
  • Build Target: Android 4.2
  • Application name: TwoActivity
  • Package name: tr.androidApp.TwoActivity
  • Create Activity: MainActivity

Main.xml dosyasını açalım ve aşağıdaki gibi ekranı oluşturalım:

 

<?xml version=”1.0″ encoding=”utf-8″?>
<LinearLayout
xmlns:android=”http://schemas.android.com/apk/res/android”
android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”>
<Button
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”Go to Activity Two”
android:id=”@+id/btnActTwo”>
</Button>
</LinearLayout>

 

Ekranda bir tane buton olacaktır. Butona bastığı zaman ikinci etkileşimi etkileneceğiz.

MainActivity.java’yı açalım ve aşağıdaki kodla dolduralım.

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener {

Button btnActTwo;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

btnActTwo = (Button) findViewById(R.id.btnActTwo);
btnActTwo.setOnClickListener(this);
}

@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btnActTwo:
// TODO Call second activity
break;
default:
break;
}
}
}

Yukarıdaki kodda btnActTwo belirledik ve işletici olarak etkileşimi (Activity) belirledik. OnClick metodu şuanda tam oluşturmadık bunu biraz sonra yapacağız. Sonra hangi butona bastığınızı buluyoruz. Ve ikinci ekranı (Etkileşimi) çağıracağız. Ama çağırmadan önce ikinci ekranı oluşturmamız gerekiyor. Projeyi oluşturduğu zaman varsayılan etkileşimi (Activity) oluşturuyoruz.

CreateActivity

Bu etkileşim için isim veriyoruz. Genelde MainActivity ismi veriyoruz. Sonra MainActivity.java klası oluşuyor. Klasın amacı etkileşimin davranışı kontrol etmek. Bunun dışında etkileşim AndroidManifest.xml dosyasında kayıtlı oluyor. ManifetsInProject

AndroidManifest.xml’i açalım.

ManifestActivities

Aşağıda Application sekmeyi açıyoruz. Sol tarafında MainActivity’yi görüyoruz. Onu açtığı zaman IntentFilter ve iki tane parametreyi görüyoruz. android.intent.action.Main’nın amacı  uygulamayı çalıştırdığında ilk açılacak etkileşimi belirlemek. İkinci parametrenin amacı (android.intent.category.LAUNCHER) uygulamayı Android uygulama listesinde yerleştirmek. Sağda Name alanında. MainActivity ismi klası görüyoruz. Klasın amacı etkileşimin çalışması kontrol etmek. Yeni etkileşimi oluşturmak için yeni kası oluşturmamız gerekecektir. Klası oluşturmak için src dosyasında tr.androidApp.TwoActivity seçeneğe farede sağa düğmeye bastıktan sonra New -> Class seçeneği seçiyoruz.

New Class

Çıkan pencerede Name alanında ActivityTwo ve Superclass alanında android.app.Activity’yi giriyoruz.

New Java Class

ActivityTwo klası oluşturduk. Ama bu klasın içeriği boştur. Klasta etkileşimi (Activity) oluşturmak için onCreate metodu kullanmamız gerekiyor.

package tr.androidApp.TwoActivity;

 

import android.app.Activity;

import android.os.Bundle;

 

public class ActivityTwo extends Activity {

 

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

}

Ekranı oluşturmak için klasta setContentView metod eksiktir. Bu metod giriş olarak layout dosyayı kullanıyor. Yeni bir layout dosyayı oluşturalım (res->layout->new->fıle). Dosyanın ismi two.xml olsun. Bu dosyayı aşağıdaki kodla dolduralım:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="vertical"
 android:layout_width="match_parent"
 android:layout_height="match_parent">
<TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="This is Activity Two">
</TextView>
</LinearLayout>

Ekranımızda bir tane TextView “This is Activity Two” mesajla oluşturduk. Bu dosyayı (two.xml) setContentView metodu uygulayarak ActivityTwo klasta kullanacağız.

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.two);
  }

(Sadece işaretlenmiş kodu ekliyoruz). Kaydedelim. ActivityTwo klası hazırdır. Klası çalıştırdığımız zaman layout (two.xml) dosyada oluşturduğumuz ekranı çağıracak. Şimdi etkileşimi Manifest dosyasında kayıt yapmamız gerekiyor. AndroidManifest.xml dosyayı açtıktan sonra Application sekmeyi açıyoruz ve Add butona basıyoruz.

AddActivityManifest1

Açılan pencerede Activity seçeneği seçiyoruz.

AddActivityManifest2

OK butonuna bastıktan sonra. Sağ tarafında Name alanında “Activity Two” ismini giriyoruz. Kaydediyoruz. Manifest dosyasında artık iki tane etkileşimi kayıtlıdır.

ManifestInProject1

MainActivity.java dosyasında boş kalan onClick metodu oluşturalım. OnClick metodu ikinci etkileşimi (ActivityTwo) çağıracaktır. MainActivity.java’yı açalım ve aşağıdaki işaretlenmiş satırları ekleyelim.

 

case R.id.btnActTwo:
      Intent intent = new Intent(this, ActivityTwo.class);
      startActivity(intent);
      break;

Import bölümünü yeniliyoruz (CTRL+SHIFT+O), kaydediyoruz ve emulatörde çalıştırıyoruz. Uygulama açıldığında MainActivity görünüyor.

Activity1

 

Butona bastıktan sonra ikinci etkileşime (ActivityTwo) geçiyoruz.

 

Activity2

 

Yeni etkileşimi (Activity) daha iyi anlamak için birkaç tane yeni etkileşimi oluşturabilirsiniz. Gelecek dersimizde Intent ve IntentFilter ne işe yarıyor öğreneceğiz. (Önemli bir konu)

 

 

 

Etiketler: Android programlamaandroid.intent.action.Mainandroid.intent.category.LAUNCHERAndroidManifest.xmlapplicationbtnActTwoIntentFilterlayoutMainActivity.javaOnClicktwo.xml
Paylaş5PaylaşTweetYollaPaylaş
Victor Cuiumju

Victor Cuiumju

Yorum Yap Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

RSS Technopat Sosyal

  • 2. el Kindle alınır mı?
  • İsrail - Filistin olayı, savaş değil katliamdır!
  • İslamda baş kollardan birine bağlı olmamak
  • 700 TL'ye hoparlör önerisi
  • Dragon Age The Veilguard mı Clair Obscur: Expedition 33 mü?
  • Attack Shark R5 Ultra alınır mı?
  • Çift monitör setup önerisi
  • Aragaz ile vites nasıl düşürülür?
  • 3500-4000 TL arasına mouse önerisi
  • Mount & Blade Warband mı? AoH2 mi? Hangisi oynanır?

Technopat Video

Şu an oynayan

Apple’ı 20’ye katlayan saat! Huawei Watch GT 6 Pro incelemesi

Huawei Watch GT 6 Pro

Apple’ı 20’ye katlayan saat! Huawei Watch GT 6 Pro incelemesi

Akıllı Saat
Technopat ofisi Eylül ayında neler aldı? 

Technopat ofisi Eylül ayında neler aldı? 

Giyilebilir Teknoloji
Gigabyte AORUS FO27Q5P: 500 Hz QD-OLED ile rekabetçi oyunculara özel monitör

Gigabyte AORUS FO27Q5P: 500 Hz QD-OLED ile rekabetçi oyunculara özel monitör

Haber

Teknoloji tutkunu Technopatların ortak adresi: Technopat.net!

Güncel teknoloji, internet, donanım, yazılım, oyun ve daha fazlası haber, makale ve videolar ile Technopat’ta sizlerle.


01010100 01100101 01100011 01101000 01101110 01101111 01110000 01100001 01110100

Kategoriler

  • Yapay Zeka
  • Ev Teknolojileri
  • Makale
  • Video

Sosyal Medya

Bağlantılar

  • Hakkında
  • Haber
  • Video
  • Sosyal
  • Çerez Politikası
© 2011-2025 Technopat. Tüm Hakları Saklıdır.
Netse
Çerez Onayı
Web sitemizi ziyaret ettiğinizde, kullanıcı deneyiminizi daha iyi hale getirmek, hizmetlerimizi size daha etkin bir şekilde sunabilmek için çerezler (cookies) ve benzeri araçlar kullanıyoruz. Çerezler, internet sitesinin düzgün çalışmasını sağlamak, içeriği kişiselleştirmek, sosyal medya özellikleri sağlamak ve trafik analizi yapmak için kullanılan küçük metin dosyalarıdır. Çerezleri nasıl kullandığımız ve kişisel verilerinizi nasıl işlediğimiz hakkında daha fazla bilgi almak için çerez politikamızı ve kişisel veri politikamızı inceleyebilirsiniz.
Fonksiyonel Her zaman aktif
Teknik depolama veya erişim, sadece kullanıcının açıkça talep ettiği belirli bir hizmetin kullanılmasını sağlama amacıyla veya iletişimin elektronik iletişim ağı üzerinden iletilmesinin tek amacıyla yasal olarak kesinlikle gereklidir.
Tercihler
Teknik depolama veya erişim, abone veya kullanıcı tarafından istenmeyen tercihlerin depolanması yasal amacıyla gereklidir.
İstatistikler
Sadece istatistiksel amaçlarla kullanılan teknik depolama veya erişim. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Pazarlama
Teknik depolama veya erişim, reklam gönderimi için kullanıcı profilleri oluşturmak veya kullanıcıyı bir web sitesinde veya birden fazla web sitesinde benzer pazarlama amaçları için takip etmek amacıyla gereklidir.
Seçenekleri yönet Hizmetleri yönetin {vendor_count} satıcılarını yönetin Bu amaçlar hakkında daha fazla bilgi edinin
Tercihleri yönet
{title} {title} {title}
Onayı Yönet
En iyi deneyimleri sunmak için, cihaz bilgilerini saklamak ve/veya bunlara erişmek amacıyla çerezler gibi teknolojiler kullanıyoruz. Bu teknolojilere izin vermek, bu sitedeki tarama davranışı veya benzersiz kimlikler gibi verileri işlememize izin verecektir. Onay vermemek veya onayı geri çekmek, belirli özellikleri ve işlevleri olumsuz etkileyebilir.
Fonksiyonel Her zaman aktif
Teknik depolama veya erişim, abone veya kullanıcı tarafından açıkça talep edilen belirli bir hizmetin kullanılmasını sağlamak veya bir elektronik iletişim ağı üzerinden bir iletişimin iletimini gerçekleştirmek amacıyla meşru bir amaç için kesinlikle gereklidir.
Tercihler
Teknik depolama veya erişim, abone veya kullanıcı tarafından talep edilmeyen tercihlerin saklanmasının meşru amacı için gereklidir.
İstatistik
Sadece istatistiksel amaçlar için kullanılan teknik depolama veya erişim. Sadece anonim istatistiksel amaçlar için kullanılan teknik depolama veya erişim. Mahkeme celbi, İnternet Hizmet Sağlayıcınızın gönüllü uyumu veya üçüncü bir taraftan ek kayıtlar olmadan, yalnızca bu amaçla depolanan veya alınan bilgiler genellikle kimliğinizi belirlemek için kullanılamaz.
Pazarlama
Teknik depolama veya erişim, reklam göndermek için kullanıcı profilleri oluşturmak veya benzer pazarlama amaçları için kullanıcıyı bir web sitesinde veya birkaç web sitesinde izlemek için gereklidir.
Seçenekleri yönet Hizmetleri yönetin {vendor_count} satıcılarını yönetin Bu amaçlar hakkında daha fazla bilgi edinin
Tercihleri görüntüle
{title} {title} {title}
Sonuç bulunamadı
Bütün Sonuçları Göster
  • Giriş
  • Teknoloji Haberleri
  • Sosyal
  • Video
  • Tavsiyeler
  • İncelemeler
    • Video İncelemeler
  • Güvenlik
  • Oyun
  • Makale
    • Pratik
    • Yazar Köşeleri

© 2025 Technopat
Sorularınız için Technopat Sosyal