Komyuter injiniring fakulteti



Download 418,3 Kb.
bet1/12
Sana06.03.2022
Hajmi418,3 Kb.
#483588
  1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
3 deadline


O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD ALXORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI FARG’ONA FILIALI
KOMYUTER INJINIRING FAKULTETI

“Mobil ilovalar ishlab chiqish”fanidan
3-deadline


Mavzu: Android Studio muhitida menyular va dialoglar bilan ishlash.
Menyular
Menyular ko'plab turdagi dasturlarda keng tarqalgan foydalanuvchi interfeysi komponentidir. Tanish va izchil foydalanuvchi tajribasini ta'minlash uchun siz MenuAPI-lardan foydalanuvchi xatti-harakatlari va faoliyatingizdagi boshqa variantlarni taqdim etish uchun foydalanishingiz kerak .
Android 3.0 (API darajasi 11) dan boshlab, Android-da ishlaydigan qurilmalar maxsus Menyu tugmachasini taqdim etishlari shart emas . Ushbu o'zgarish bilan Android ilovalari an'anaviy 6 elementli menyu paneliga bog'liqlikdan chiqib ketishi kerak va buning o'rniga foydalanuvchilarning umumiy harakatlarini taqdim etish uchun ilovalar panelini ta'minlashi kerak.
Ba'zi bir menyu elementlari uchun dizayn va foydalanuvchi tajribasi o'zgargan bo'lsa ham, harakatlar va variantlar to'plamini aniqlash uchun semantika hali ham MenuAPI-larga asoslangan . Ushbu qo'llanmada uchta asosiy turdagi menyularni yoki Android-ning barcha versiyalarida aksiyalar taqdimotlarini qanday yaratish mumkinligi ko'rsatilgan:
Variantlar menyusi va ilovalar paneli
Imkoniyatlari menyu faoliyat uchun menyu ob'ektlar asosiy to'plam. Bu erda siz "Qidirish", "Elektron pochta xabarlarini yozish" va "Sozlamalar" kabi dasturga global ta'sir ko'rsatadigan amallarni joylashtirishingiz kerak.
Kontekst menyu
Android platformasi sizning ilovalaringizda foydalanishingiz mumkin bo'lgan bir nechta standart menyularni taqdim etadi. Kontekst menyusi foydalanuvchilar foydalanuvchi interfeysi elementlarini uzoq bosib, elementni bosib, menyu paydo bo'lguncha ushlab turganda paydo bo'ladi. Android foydalanuvchilari odatda ushbu turdagi menyularga odatlanib qolishgan, chunki bu asosiy ekran piktogrammalarini o'zgartirish kabi tizim funktsiyalari uchun standartdir. Android ishlab chiquvchilari qo'llanmasi kontekst menyusini kompyuterni o'ng tugmasini bosish bilan taqqoslaydi. Kontekst menyusini amalga oshirish to'g'ridan-to'g'ri va ko'plab dasturlarning asosiy tarkibiy qismidir.
Agar sizning dastur paketingizda "res" resurslar katalogida "menyu" papkasi bo'lmasa, uni yarating. Menyu papkasida menyuingiz uchun yangi XML fayl yarating va uni o'zingiz tanlagan nom bilan saqlang. Ushbu faylda siz kontekst menyusida paydo bo'ladigan narsalarni aniqlaysiz. Siz quyidagi koddan foydalanishingiz mumkin:
Menyu manbasini yarating





android:title="A Context Option" />
android:title="Another Context Option" />


Kontekst menyusini taqdim etishni istagan foydalanuvchi interfeysi elementida uzoq bosib turishni tinglash uchun Android-ga ko'rsatma berishingiz kerak. Faoliyatingizning "onCreate" usuli ichiga o'zingizning ilovangiz ma'lumotlariga mos ravishda o'zgartirishlar kiritib, quyidagi kodni qo'shing:




//get a reference to the view for pressing
TextView pressView = (TextView)findViewById(R.id.press);
//register if for context
registerForContextMenu(pressView);

O'zingizning ko'rish elementingiz uchun ishlatgan ID atributini XML layout faylida ushbu press "press" dan foydalangan holda ko'rsating. Bu sizning ilovangizga ko'rsatilgan ko'rish elementini uzoq bosib bosgan foydalanuvchilarni aniqlashni buyuradi. Bu sodir bo'lganda, dastur "onCreateContextMenu" usulini chaqiradi, unda siz kontekst menyusi resursidan foydalanishni buyurishingiz mumkin.
Menyu manbangizdan foydalaning
Siz Android-ga ro'yxatdan o'tgan ko'rinish elementi uchun kontekst menyusi sifatida o'zingiz yaratgan XML menyu resursidan foydalanishni xohlayotganingizni bildirishingiz kerak. Faoliyat sinfingizga quyidagi usulni qo'shing:




public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.lovely_context, menu);
}

O'zingizning kontekst menyusi XML fayli uchun tanlagan fayl nomini aks ettirish uchun, agar kerak bo'lsa, uni o'zgartiring. Ushbu misolda namoyish qilish uchun "lovely_context.xml" nomli menyu fayli ishlatiladi.

Uzoq presslarni amalga oshirish
Faoliyat sinfingiz endi ko'rish elementidagi uzoq bosib turishni aniqlaydi, ammo menyuingizdagi har bir element tanlanganida nima bo'lishini aniqlab olishingiz kerak. Sinfingizga quyidagi usulni qo'shing:

01
02
03
04
05
06
07
08
09
10
11



public boolean onContextItemSelected(MenuItem item) {
//find out which menu item was pressed
switch (item.getItemId()) {
case R.id.option1:
doOptionOne();
return true;
case R.id.option2:
doOptionTwo();
return true;
default:
return false;
}
}

XML faylida menyu elementlarini bergan identifikator xususiyatlarini aks ettirish uchun ish holatlarini o'zgartiring. Switch operatori foydalanuvchi qaysi menyu parametrini tanlaganligini tekshirish uchun uzatilgan menyu elementi parametridan foydalanadi. 

Kontekstni tanlash usullarini qo'shing
Har bir kontekst menyusi variantiga bag'ishlangan usullarni belgilash sizning Faoliyat sinfingizni yaxshi tartibda ushlab turadi, shuning uchun switch bayonotiga kiritilgan har birini qo'shing. Quyidagi namunaviy usullar printsipni namoyish etadi:




private void doOptionOne() {
Toast.makeText(this, "Option One Chosen...", Toast.LENGTH_LONG).show();
}
//method to execute when option two is chosen
private void doOptionTwo() {
Toast.makeText(this, "Option Two Chosen...", Toast.LENGTH_LONG).show();
}

Ushbu usullar shunchaki namoyish qilish uchun interfeysga qisqa xabar yozadi.



Download 418,3 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4   5   6   7   8   9   ...   12




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish