Laboratoriya ishi №16 Mavzu: Voqealar (intents)


Download 1.54 Mb.
bet2/6
Sana05.01.2023
Hajmi1.54 Mb.
#1079842
1   2   3   4   5   6
Bog'liq
V4Z-xNaOmQAahUwVDNttZzzoKCT-FHY0

Laboratoriya ishi №17
Mavzu: Fragmentlardan foydalanish

Android Studioda fragment sinfini yaratish:


Fragment yaratish uchun birinchi navbatda biz Fragment sinfini kengaytiramiz, so'ngra Faollik sinfidagi kabi ilova mantig'ini kiritish uchun asosiy hayot aylanish usullarini bekor qilamiz. Fragment yaratishda tartibni aniqlash va Fragmentni ishga tushirish uchun onCreateView() qayta qo'ng'iroq qilishimiz kerak.


import android.os.Bundle;


import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.ViewGroup;

public class FirstFragment extends Fragment {


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_first, container, false);
}
}

Bu erda inflater parametri tartibni to'ldirish uchun ishlatiladigan LayoutInflater, konteyner parametri esa bizning Fragment joylashuvimiz kiritiladigan asosiy ViewGroup (faoliyat tartibidan). savedInstanceState parametri Fragmentning oldingi nusxasi haqida ma'lumot beruvchi to'plamdir. inflate() usuli uchta argumentga ega, birinchisi, biz o'rnatmoqchi bo'lgan resurs tartibi, ikkinchisi - ViewGroup - shishirilgan tartibning ota-onasi bo'lishi. Konteynerdan o'tish tizimning asosiy ko'rinishda ko'rsatilgan shishirilgan joylashuvning asosiy ko'rinishiga joylashtirish parametrlarini qo'llashi uchun muhim ahamiyatga ega va uchinchi parametr boolean qiymat bo'lib, shishirilgan sxema ilovaga biriktirilishi kerakligini ko'rsatadi. Inflyatsiya davrida ViewGroup (ikkinchi parametr).


Fragmentni Android-da amalga oshirish Honeycomb (3.0) yoki undan keyingi versiyasini talab qiladi:
Fragmentlar Androidning Honeycomb versiyasiga, ya'ni API 11-versiyasiga qo'shilgan. Fragmentlarga tegishli ba'zi birlamchi sinflar mavjud:

1. FragmentActivity: Muvofiqlikka asoslangan Fragment (va yuklovchi) funksiyalaridan foydalangan holda barcha harakatlar uchun asosiy sinf.


2. Fragment: Fragmentning barcha ta'riflari uchun asosiy sinf.
3. FragmentManager: Faoliyat ichidagi Fragment ob'ektlari bilan o'zaro ishlash uchun sinf.
4. FragmentTransaction: Fragmentni almashtirish yoki qo'shish kabi Fragment operatsiyalarining atom to'plamini bajarish uchun sinf.

Android Studio'da 1-misol fragmenti:


Quyida Fragmentning misoli keltirilgan. Ushbu misolda biz ikkita Fragment yaratamiz va ularni tugmachani bosish orqali yuklaymiz. Biz Faoliyatimizda ikkita tugma va FrameLayoutni ko'rsatamiz va ikkala tugmachada setOnClickListener hodisasini bajaramiz. Birinchi tugmani bosish bilan biz Birinchi Fragmentni almashtiramiz va Ikkinchi Tugmachani bosish bilan Ikkinchi Fragmentni layout (FrameLayout) bilan almashtiramiz. Ikkala Fragmentda biz TextView va Tugmachani ko'rsatamiz va Tugmachani bosish orqali biz Fragment nomini Tushdi yordamida ko'rsatamiz.


xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">

Download 1.54 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling