Bu yazıda bir buton yardımı ile activity açmayı öğreneceksiniz. İlk olarak activity nedir sorusuna cevap verelim.
Activity Nedir?
Activity, Android platformunda kullanıcı arayüzü ve etkileşimleri sağlayan bir bileşendir. Kullanıcının uygulama içindeki bir ekranı temsil eder. Örneğin, bir uygulamanın giriş ekranı, ana ekranı veya bir ayarlar ekranı gibi her ekran bir activity’dir.
Her activity, bir XML dosyası ile oluşturulmuş bir layouta sahiptir ve bu layout üzerindeki bileşenler kullanıcı arayüzünü oluşturur. Ayrıca, her activity’nin kendi yaşam döngüsü vardır ve bu döngü, activity’nin oluşturulmasından sonlandırılmasına kadar tüm aşamaları içerir. Activity’ler, birbirleriyle etkileşim içinde olabilir ve bir activity diğer bir activity’yi açabilir.
Android uygulamaları genellikle birden fazla activity içerir ve activity’ler arasındaki geçişler, kullanıcının uygulama içindeki farklı ekranlar arasında gezinmesine olanak tanır. Bu nedenle, activity’ler Android uygulama geliştirme sürecinde önemli bir konumdadır ve geliştiriciler, kullanıcı deneyimini artırmak için activity’leri doğru bir şekilde tasarlamalı ve yönetmelidirler.
Yeni bir activity oluşturma
Android Studio’da yeni bir activity açmak için şu adımları izleyebilirsiniz:
- Android Studio’yu açın.
- Projeye sağ tıklayın ve “New” seçeneğini seçin.
- “Activity” seçeneğini seçin.
- Açılan pencereden “Empty Activity” seçeneğini seçin.
- Yeni activity için bir isim belirleyin ve “Finish” düğmesine tıklayın.


Bu adımları takip ettiğinizde, yeni bir activity oluşturmuş olacaksınız. Oluşturulan activity, proje içinde bulunan “app” klasörünün altındaki “java” klasörü içindeki paketinizin altında yer alacaktır. Bu activity’nin görünümünü ve kodunu bu klasör içinde bulunan dosyalardan düzenleyebilirsiniz.

Intent Nedir?
Android’de, Intent bir işlem veya eylemi temsil eden bir nesnedir. Başka bir deyişle, bir Intent, başka bir bileşene (başka bir Activity, Service, Broadcast Receiver vb.) belirli bir eylem gerçekleştirmesini söylemek için kullanılır.
İlginizi çekebilir: Activityler Arasında Veri Transferi
Örneğin, bir Activity’den diğerine geçmek için bir Intent kullanabilirsiniz. İlk Activity’de, hedef Activity’ye geçmek için bir Intent oluşturabilir ve startActivity() yöntemini çağırarak bu Intent’i başlatarak hedef Activity’yi açabilirsiniz.
Bir Intent aynı zamanda bir veri paketi de taşıyabilir. Örneğin, bir resim görüntülemek için bir Intent oluşturabilirsiniz ve bu Intent’i, resmin yerel dosya yolu gibi verileri içeren bir veri paketi ile birlikte başlatarak, başka bir uygulamada veya bileşende resmi açabilirsiniz.
Butona Tıklayarak Activity Başlatma
Yukarıdaki tanımdan yola çıkarak activtity_main.xml içinde bir tane buton oluşturup tıkladığımızda gitmesi için yeni bir intent oluşturalım.
NOT: yukarıdaki gibi yeni bir activity oluşturduğunuzu ve isim olarak da MerhabaActivity verdiğinizi varsayarak devam ediyorum.
activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 | <Button android:id="@+id/btn_ac" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Yeni Aktivity Başlat" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> |
Ardından MainActivity içinde aşağıdaki gibi buton tıklama olayını çalıştırıp, yeni bir intent oluşturuyoruz.
MainActivity.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | public class MainActivity extends AppCompatActivity { Button btnAc; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnAc = findViewById(R.id.btn_ac); btnAc.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Yeni Aktivity başlatma Intent intent = new Intent(MainActivity.this, MerhabaActivity.class); startActivity(intent); } }); } } |
Peki yukarıdaki kodlarda ne yaptık.
Button btnAc
satırı, btnAc
isimli bir buton değişkeni tanımlar.
onCreate()
metodu, activity oluşturulduğunda çalıştırılır. Bu metotta, setContentView()
metodu çağrılarak, activity’nin kullanacağı layout belirlenir. Bu durumda, layout olarak “activity_main.xml” dosyası kullanılır.
findViewById()
metodu, belirtilen id değerine sahip bir bileşeni layouttan alır. Bu durumda, btnAc
değişkeni, layout dosyasındaki btn_ac
id’li butonu temsil eder.
setOnClickListener()
metodu, butona bir tıklama olayı ekler. Bu metot, yeni bir View.OnClickListener
sınıfı örneği ile çalışır ve tıklama olayı gerçekleştiğinde onClick()
metodu çalışır.
Intent
sınıfı, yeni bir activity başlatmak için kullanılır. Bu örnekte, MainActivity.this
ana activity’yi temsil ederken, MerhabaActivity.class
açılacak olan activity’i temsil eder.
startActivity()
metodu, yeni bir activity başlatır ve Intent
sınıfı aracılığıyla belirtilen activity’yi açar. Bu durumda, MerhabaActivity
açılır.
Bu kod, bir buton tıklaması ile yeni bir activity açma işlemini gerçekleştirir.
DEMO:
1 Yorum