ANDROİD İLE FRAGMENT KAVRAMI
Android ile Fragment
Kavramı
Daha önceden bildiğimiz activitylerimiz
vardı .
Bu activitylerle pek çok şey
yapabiliyoruz ama daha gelişmiş uygulamalar yapabilmek için kullanıcıya
daha güzel arayüzler sağlayabilmek için veya bizim telefonumuzun bize
verdiği alanı daha efektif kullanabilmek için fragmet yapısını kullanmamız
daha doğru olur.
Yukarıdaki resimdeki bizim daha önceki blog
yazımızda anlattığımız gibi Main activitydeki butona tıkladığımızda daha önceden
hazırlanan ikinci activity ve layout diğer sayfaya geçişini sağlamam
lazım.
Ama eğer tek bir activity de bu işlemleri yapmam gerekirse activity ve fragmenti aynı anda kullanmam gerekir. Şimdi butona tıklandığında aynı activitenin içinde ikinci bir fragmentin içinde istediğimiz işlemi gerçekleştiriyor. Sadece iki fragmentle sınırlı olma zorunluluğu yoktur. İstediğimiz kadar fragment kullanabiliriz ayrıca fragmentler tüm sayfayı kaplamak zorunda değildir
Fragmentlar, Activity
sınıflarına göre daha performanslı vedaha kullanışlı olarak karşımıza çıkmaktadır. Bir Activity içerisinde istediğiniz kadar Fragment yaratabilirsiniz ya da başka bir activity içersinde aynı fragment’ı tekrar
tekrar kullanabilirsiniz, istediğiniz yerde çağırabilirsiniz yani bu da
geliştiricilere esnek bir yapı sunmaktadır.
Yani
aslında Fragmentları kullanabilir alt activity sınıfları olarak tanımlanabilir.Böyle
bir yapıya sahip olduğu için de fragmentlarında activitylerde olduğu bir yaşam
döngüsü var. Tabi kendisine ait yaşam döngüsünün olması onun bu kadar da özgür
olduğu anlamına gelmiyor, her ne kadar böyle bir durum var olsa da fragment’ın
yaşamı içerisinde bulunduğu activity’ye bağlıdır.Örneğin activity sona erdiği
zaman fragment’da sona erer.
Activity
Fragment Lifecycle Nedir?
dışındayken ve geri döndüğünde, uygulamanızdaki Activity örnekleri yaşam döngüsünde farklı hallerde geçiş yapar. Activity sınıfı, bir durumun değiştiğini activity’ye bildirebilmesini sağlayan bir dizi geri arama sağlar: sistem, bir activity oluşturuyor, durduruyor, devam ettiriyor veya etkinliğin bulunduğu işlemi yok ediyor.Yaşam döngüsü geri arama yöntemleri içinde,kullanıcı uygulamayı terk edip yeniden girdiğinde etkinliğinizin nasıldavrandığını bildirebilirsiniz.
Bir Fragment Oluşturmak
Şimdi oluşturduğumuz sınıfta fragment packet ını extend etmeliyiz.
public class FragmentA extends Fragment{
. . .
}
Daha sonra layout klasörünün altına sağ tıklayarak layout resorse file diyeyek fargmentin xml dosyasını açıyoruz.
Main activity de onCreate metodunun var olduğunu biliyoruz
fragmentlerde de oncreate e benze onCreateView diye bir metot var ve bunu kullanmalıyız.Ve bu metodun çağrıldığında view nesnesi dönecektir.
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view= inflater.inflate(R.layout.fragment_a,container,false);
return view;
}
Ve şimdide fragment_a.xml
dosyasının dizayn kısmından fragment nesnesini sürükleyip bırakıyoruz ve seçeneklerden Fragment
A' yı seçiyoruz
Bu kısımda inflater metodunu kulanarak layout daki fragment a yi xmlden javaya dönüştürmek istediğimizi söylüyoruz.
yani özetle burada xml le fragment A'yı MainActivitye eklemiş oldum.
Son olarak da uygulamızın son halini görelim:
Referanslar :
https://medium.com/@bugraburunguz/activity-and-fragment-lifecycle-39a3c77a2df6
http://hakandurmaz.com.tr/blog/android-fragment-nedir/
Comments
Post a Comment