Android menyu tugmasi qayerda? Androidda menyu tugmasi olib tashlandi. Menyu bandlarini tanlash. Harakatlar paneli kontseptsiyasiga o'tish

Sozlamalarga tezkor kirish menyusi sizga ulanish imkonini beradi Wi-Fi tarmoqlari, yorqinlikni sozlash, avtomatik aylantirish va h.k. Boshqa ko‘plab qurilmalar kabi sozlamalar paneliga tezkor kirish ham shaxsiy imtiyozlarga mos ravishda sozlanishi mumkin.

Buning uchun siz foydalanishingiz kerak uchinchi tomon ilovalari va ulardan smartfon yoki planshetning versiyasi va modeliga mosini tanlang.

AntTek tezkor sozlamalari

Sozlamalarga tezkor kirish menyusini sozlash imkonini beruvchi ilovalar orasida eng mashhurlari AntTek Quick Settings, Power Toggles, Quick Settings, Sidebar. Biz misol sifatida AntTek Quick Settings ilovasidan foydalanib, qurilmangiz konfiguratsiyasiga tezkor kirish menyusini yaratishni ko‘rib chiqamiz.

  1. IN qidiruv paneli do `konda Ilovalarni o'ynang Bozor ilova nomini kiriting.
  2. Siz tanlagan ilovani oching.
  3. O'rnatish tugmasini bosing.
  4. Ilovani o'rnatish uchun zarur bo'lgan ruxsatlarni qabul qiling.
  5. Yuklab olingandan so'ng dasturni oching.
  6. Dasturni birinchi marta ishga tushirganingizda, uni ishlatish bo'yicha ko'rsatmalarni diqqat bilan o'qing. Sozlamalarning tezkor menyusiga kirish uchun holat satrining o'rtasini uzoq vaqt bosib turing. Qurilmangizda funksiyani yoqish uchun boshqa yorliqni o‘rnatish uchun ga teging. Tugma mavzuni o'zgartirish va qo'shimcha sozlamalarni ochish imkonini beradi.
  7. Keyingiga bosing.
  8. Yorliq tugmalarini tekshiring. Agar kerak bo'lsa, ko'proq qo'shing.

Nima uchun siz Android qurilmasini rootlashingiz kerak va u qanday imkoniyatlarni taqdim etishi juda ko'p foydalanuvchilarga ma'lum, bu muhandislik menyusi deb ataladigan apparat sozlamalarining yashirin rivojlangan menyusi haqida gapirib bo'lmaydi. Bu sozlamalar haqida kam odam biladi va hatto kamroq egalari. mobil qurilmalar ulardan qanday foydalanishni bilish. Android muhandislik menyusi nima va u nima uchun kerak?

Muhandislik menyusi Android operatsion tizim va qurilma sensorlarini sinab ko'rish uchun ishlab chiquvchilar uchun mo'ljallangan maxsus kichik dasturdan boshqa narsa emas. Ushbu dasturning interfeysi mobil qurilmangizning apparat konfiguratsiyasini o'zgartirish imkonini beruvchi variantlar to'plami bilan ifodalanadi. Uning yordami bilan siz gadjetning apparat ta'minoti haqida to'liq ma'lumot olishingiz, protsessor, operativ xotira va jismoniy flesh xotira, rejimlarni sinab ko'rishingiz mumkin. simsiz ulanish, kamera sozlamalari, displey, mikrofon, dinamiklar va boshqalarni sozlang.

Muhandislik menyusiga kirish

Bularning barchasi, albatta, yaxshi, lekin Android interfeysida mos keladigan variant bo'lmasa, muhandislik menyusiga qanday o'tish mumkin? Kengaytirilgan apparat sozlamalari menyusiga kiring maxsus kod, terish uchun qatorga kiritilgan telefon raqami. Menyu kombinatsiyaning oxirgi belgisini kiritgandan so'ng darhol ochilishi kerak, lekin ba'zi hollarda qo'ng'iroq tugmasini bosishingiz kerak bo'lishi mumkin.

Jarayonning o'zida murakkab narsa yo'q, ammo buni hisobga olish kerak turli modellar Mobil gadjetlar o'z kodlariga ega. Quyida biz eng mashhur ishlab chiqaruvchilar uchun kodlar ro'yxatini taqdim etdik.

Android-dagi muhandislik menyusi kodlari universaldir, ammo ularning "chap" proshivkali telefonlarda to'g'ri ishlashi kafolatlanmaydi. Uskunaga kirish uchun Android sozlamalari ham foydalanish mumkin maxsus dasturlar, Masalan, "MTK muhandislik menyusi" yoki "Mobileuncle MTK Tools".

Bunday ilovalar, ayniqsa, proshivkada telefon terishni ta'minlamaydigan planshetlarda foydalidir. Interfeys va to'plam mavjud variantlar Ushbu dasturlar biroz boshqacha, ammo ularni tushunish qiyin bo'lmaydi.

Qaysi usuldan foydalansangiz, muhandislik menyusi bilan ishlashda maksimal darajada ehtiyot bo'lishingiz kerak. Ishni boshlashdan oldin sozlamalarni tiklashingiz uchun barcha boshlang'ich parametr qiymatlarini yozib qo'yish tavsiya etiladi. Undan nima chiqishini bilish uchun muhandislik menyusi bilan tajriba o'tkazish qabul qilinishi mumkin emas, chunki siz qurilmangizni yaroqsiz holga keltirishingiz mumkin!

Muhandislik kodlari ro'yxatini olish uchun maxsus model telefondan foydalanish mumkin maxsus dastur Maxfiy kodlar, mavjud Google Play. Ba'zi mobil qurilmalar modellarida muhandislik menyusiga to'liq kirish uchun superfoydalanuvchi huquqlari (root) talab qilinishi mumkin.

Menyu yordamida nimani o'zgartirishingiz mumkin

Siz muhandislik menyusiga qanday kirishni bilasiz, endi uning yordamida qanday sozlamalarni amalga oshirish mumkinligini bilib olaylik. Imkoniyatlar yanada kengroq. Menyuning pastki dasturi dinamik ovoz balandligini va mikrofon sezgirligini, o'rnatilgan kamera sozlamalarini, audio parametrlarini o'zgartirishni qo'llab-quvvatlaydi. GPS modullari, Bluetooth va Wi-Fi, batareya quvvatini tejash uchun foydalanilmagan chastotalarni o'chirish. Shuningdek, siz qurilmangizning asosiy komponentlarini sinab ko'rishingiz mumkin va tashqi karta xotira, kiritish-chiqarish operatsiyalarini sozlash, protsessor va batareyaning aniq harorati va zararli elektromagnit nurlanish darajasini aniqlash.

Boshqa foydali funksiya tiklash rejimiga kirish uchun - kompyuterlardagi BIOS-ning analogi bo'lib, u o'z navbatida barcha sozlamalar to'plamini o'z ichiga oladi. Qayta tiklash rejimi xususiyatlariga qurilmani zavod sozlamalariga qaytarish, proshivkani yangilash, operatsion tizimning zaxira nusxasini yaratish, ildizga kirish huquqiga ega bo'lish va nozik foydalanuvchi ma'lumotlarini o'chirish kiradi. Bitta maqolada muhandislik menyusining barcha variantlarini sanab o'tishning iloji yo'q, telefon yoki planshetda qanchalik ko'p sensorlar va komponentlar bo'lsa, u shunchalik kengroq bo'ladi.

Muhandislik menyusi orqali telefon ovozini oshirish

Endi keling, eng mashhur operatsiyalardan birining misolidan foydalanib, apparat sozlamalari bilan qanday ishlashni ko'rsatamiz va muhandislik menyusi orqali Android-da ovoz balandligini qanday oshirishni o'rganamiz. Shunday qilib, Mobileuncle MTK Tools-dan foydalanib yoki "sehrli" kodni kiritib, menyuga o'ting, so'ngra Audio bo'limini toping va oching. Agar siz Mobileuncle Tools dasturi orqali menyuga kirgan bo'lsangiz, ushbu bo'lim muhandis rejimining yuqori bo'limida joylashgan bo'ladi, boshqa hollarda u odatda "Uskuna sinovlari" yorlig'ida joylashgan.

Audio bo'limida siz quyidagi variantlarga ega bo'lasiz:

  • Oddiy rejim normal rejim, bu eshitish vositasi qurilmaga ulanmaganida ishlaydi.
  • Eshitish vositasi rejimi - naushniklar yoki karnaylar smartfonga ulanganda yoqiladigan eshitish vositasi rejimi.
  • LoudSpeaker Mode - karnay rejimi. Agar eshitish vositasi qurilmaga ulanmagan bo'lsa, karnay yoqilganda faollashadi.
  • Headset_LoudSpeaker Mode - ulangan eshitish vositasi bilan dinamik rejimi. Avvalgisi bilan bir xil, lekin minigarnituralar yoki karnaylar ulangan.
  • Nutqni yaxshilash - bu rejim karnaydan foydalanmasdan telefonda gaplashganda faollashadi.

Bo'limda boshqa sozlamalar bo'lishi mumkin, masalan, Debug Info va Speech Logger, lekin ularga tegmaslik yaxshiroqdir. Ovoz balandligini o'zgartirmoqchi bo'lgan rejimni tanlang (Oddiy rejim bo'lsin), ochilgan ro'yxatda Type ni tanlang va qaysi funksiya uchun ovoz balandligini o'zgartirishimizni ko'rsating. Quyidagi funktsiyalar mavjud bo'lishi mumkin:

  • Ring - kiruvchi qo'ng'iroqlar uchun ovoz balandligini sozlash;
  • Media – multimediyani o‘ynatishda karnay tovushini sozlash;
  • Sip - Internet qo'ng'iroqlari uchun ovoz sozlamalari;
  • Sph - so'zlashuv karnayining ovoz sozlamalari;
  • Sph2 - ikkinchi dinamikning ovoz sozlamalari (variant mavjud bo'lmasligi mumkin);
  • Mikrofon - mikrofon sezgirligini o'zgartirish;
  • FMR - FM radiosining ovoz balandligi sozlamalari;
  • Sid - bu parametrga tegmaslik yaxshiroqdir, aks holda suhbatdoshning ovozi bilan bog'liq muammolar paydo bo'lishi mumkin.

Funktsiyani tanlagandan so'ng, joriy ro'yxatni aylantiring, kerakli Qiymatni o'rnating (0 dan 255 gacha) va yangi Set sozlamalarini qo'llash uchun bosing.

Ovoz balandligini o'zgartirish uchun siz oldindan o'rnatilgan shablonlardan ham foydalanishingiz mumkin - "Daraja" opsiyasi. Aksariyat telefonlar 0 dan 6 gacha yetti darajali darajaga ega. Max Vol sozlamasiga tegmaslik tavsiya etiladi, xuddi Qiymat qiymatlarini haddan tashqari baland o‘rnatmaslik kerak, aks holda karnaylardagi ovoz xirillashni boshlaydi. Ovoz bo'limidagi boshqa rejimlar xuddi shunday tarzda sozlangan.

Ba'zi smartfon va planshet modellari yangi sozlamalar kuchga kirishi uchun qayta ishga tushirishni talab qiladi.

Qayta o'rnatish

Va bugungi kunda biz ko'rib chiqadigan oxirgi narsa muhandislik menyusi parametrlarini zavod qiymatlariga qaytarishdir. Agar o'zgartirishlar kiritilgandan so'ng, qurilma noto'g'ri ishlay boshlasa, kerak bo'lishi mumkin. Qayta tiklashning bir necha usullari mavjud. Tizim normal yuklansa, sozlamalarga o'ting va "Zaxiralash va tiklash" bo'limini oching.

Bundan tashqari, maxsus kiritish orqali muhandislik menyusini tiklashingiz mumkin xizmat kodi. Odatda bu *2767*3855#, *#*#7780#*#* yoki *#*#7378423#*#*, lekin telefoningiz modeli boshqa kodni talab qilishi mumkin.

Yana bir variant - yuqorida aytib o'tilgan tiklash rejimidan foydalanish. Unga kirish uchun quyidagi kombinatsiyalardan birini ishlating:

  • Quvvat tugmasi + ovoz balandligini pasaytirish.
  • Quvvat tugmasi + ovoz balandligini oshirish.
  • Quvvat tugmasi + Uy tugmasi + Ovozni pasaytirish/ko'tarish.
  • Quvvat tugmasi + ovoz balandligini oshirish + ovozni pasaytirish.

Ochilgan variantlar ro'yxatida "ma'lumotlarni o'chirish/zavod sozlamalarini tiklash" → "Ha - barcha foydalanuvchi ma'lumotlarini o'chirish" → "tizimni hozir qayta yuklash" ni tanlang. Qurilma qayta ishga tushadi va sozlamalar qayta tiklanadi.

Muhandislik menyusi sozlamalarini tiklashning yana bir usuli bor, lekin u super foydalanuvchi huquqlarini talab qiladi. Har qanday foydalanish fayl menejeri qo'llab-quvvatlash bilan ildiz huquqlari, tizimning ildiz katalogiga o'ting, so'ngra papkaning barcha yoki bir qismini o'chirib tashlang data/nvram/apcfg/aprdcl va qayta ishga tushiring.

Jilddagi fayllar aprdcl ular muhandislik menyusini o'rnatish uchun mas'uldirlar. Bir vaqtning o'zida barcha fayllarni o'chirish shart emas. Agar siz, aytaylik, audio sozlamalaringizni buzsangiz, asl sozlamalarni tiklash uchun faqat nomlarida audio satr elementi bo'lgan fayllarni o'chirib tashlashingiz kerak bo'ladi. Va bir daqiqa. Qayta tiklash usulidan qat'i nazar, har doim shunday qiling zaxira nusxasi shaxsiy ma'lumotlaringiz va ilovalaringiz, chunki ularning barchasi yo'qolishi mumkin.

Bir vaqtlar, taxminan 5 yil oldin, qurilmalar bilan operatsion tizim Android. Bu yaxshi vaqt edi, dunyo inqirozdan chiqayotgan edi, oldinda juda ko'p qiziqarli narsalar bor edi va har bir qurilmada Menyu tugmasi bor edi.
2 yildan so'ng, Android yigitlari qurilma tanasidagi "menyu" tugmasi endi moda emasligini va siz usiz ham qilishingiz mumkinligini xabar qilishdi. O'shandan beri har birimiz (Dasturchilar gildiyasi) Android qurilmalarining aksariyat qismida menyuni qanday ochishni bilamiz.
Ba'zilar uchun bu dahshatli bayandek tuyulishi mumkin, shunday bo'lsin, lekin o'tgan hafta biz hayotimizning 2 soatini foydalanuvchiga buni tushuntirishga sarfladik. Bunga chidashning iloji yo'q edi, shuning uchun quyida Android qurilmalarida menyu funksiyasini qanday chaqirish kerakligi tasvirlangan.
Mexanik menyu tugmalari eng keng tarqalgan qurilmalarda shunday ko'rinadi:

Bundan tashqari, ko'p hollarda menyu funktsiyasini chaqirish uchun bitta qisqa tegish kifoya qiladi. Biroq, ko'pincha menyu chaqiruvi tanlash tugmasiga qo'shilishi mumkin ishlaydigan ilovalar. U shunday ko'rinadi:


Bunday holda, menyu ochiladi faqat uzoq bosish bilan(uzoq bosish deb ataladigan)! Ya'ni faqat barmog'ini ko'rsatdi, balki poked va ushlab. Ko'pchilik bundan keyin Voy!

Men planshet egalariga e'tibor berishni maslahat beraman ish maydoni ekran, bu erda tugmalar eng ko'p joylashgan joy, shu jumladan Menyu.


Va har doim ham maksimal o'ngga emas, lekin bu tugma aynan shunday ko'rinadi.
Android OS ning so'nggi versiyalarida menyu tugmasi shunday ko'rinadi.

Android bir nechta menyu turlarini qo'llab-quvvatlaydi. Birinchidan - telefonda alohida tugma mavjud Menyu(eski telefonlarda), bosish menyuni ochadi. Yangi qurilmalarda alohida tugma olib tashlandi va vertikal yo'nalishdagi uchta nuqta ko'rinishidagi menyu belgisi bilan almashtirildi. Ikkinchi tur - bu kontekst menyusi bo'lib, ekranda barmog'ingizni kerakli joyda bosib ushlab turganda paydo bo'ladi (siz telefoningizning markaziy tugmachasini ham bosib ushlab turishingiz mumkin). Kontekst menyusi, o'z navbatida, pastki menyularga ega bo'lishi mumkin. Bugun biz birinchi turdagi menyu bilan tanishamiz. Ushbu maqolada ishlayotgan yangi qurilmalarda menyu bilan ishlash muhokama qilinadi Android boshqaruvi 4.0 va undan yuqori.

Shablonda Bo'sh faoliyat menyu yo'q, shuning uchun uni o'zimiz yaratamiz. Bu sizga ish printsipini tushunishga va loyihaning umumiy ko'rinishini olishga yordam beradi. Menyu bandlarini tanlash uchun sinflar, usullar va kodlarning nomlarini eslab qolish shart emas. Boshqa shablonlarda menyu o'rnatilgan bo'ladi va siz uni darhol ishlatishingiz mumkin.

Yaratmoq yangi loyiha asosida Bo'sh faoliyat va uni boshqaring. Menyu hali yo'q.

Faylda bir nechta satr resurslarini yarataylik res/values/strings.xml, menyu elementlari uchun javobgar bo'ladi:

Sozlamalar Mushuk Mushuk Kitty

Endi yangi jild yarating menyu papkada res res, | Yangi | Katalog). Keyin yaratilgan papkada fayl yarating menu_main.xml- nom menyu asosiy faoliyatga tegishli ekanligini bildiradi Asosiy faoliyat(papkani o'ng tugmasini bosing menyu | Yangi | Resurs fayli menyusi). Agar siz bir nechta ekranli dastur yaratsangiz, unda har bir faoliyat o'z sozlamalari bilan alohida menyuga ega bo'ladi. Hozircha faylni ochamiz menu_main.xml va natijada olingan shablonga kodingizni qo'shing:

Keling, faylni ochamiz Asosiy faoliyat. Hozirda faqat bitta usul mavjud onCreate(). Qo'shamiz yangi usul onCreateOptionsMenu(). Aynan bu usul faoliyat menyusining ko'rinishi uchun javobgardir. Studiyadagi menyuni tanlang Kod| va keyingi oynada birinchi harflar yordamida usul nomini kiritishni boshlang. Avval kiritilishi mumkin Bosh harflar, ya'ni. ocom ( o n C qaytadi O variantlari M enu) tez topmoq kerakli chiziq. Tugmasini bosing KELISHDIKMI va biz ish qismini olamiz.

@Override umumiy mantiqiy onCreateOptionsMenu(Menyu menyusi) (qaytish super.onCreateOptionsMenu(menyu); )

Biz shablonga menyu resurslaridan ma'lumotlarni oladigan va ularni ekrandagi menyu elementlariga aylantiruvchi usulni qo'shamiz.

@Override umumiy mantiqiy onCreateOptionsMenu(Menyu menyusi) ( getMenuInflater().inflate(R.menu.menu_main, menyu); rostini qaytarish; )

Usulda shishirmoq() Siz menyu manbasiga ishora qilyapsiz ( R.menu.menu_main) va sinf ob'ekti Menyu.

Ingliz tilida "inflate" inflate deb tarjima qilinadi, ya'ni. Android ishlab chiquvchilariga ko'ra, biz ob'ektni, masalan, menyuni ma'lumotlar bilan puflaymiz. Ammo, aslida, "shishirmoq" so'zi iboradan kelib chiqqan kvartirada- kvartiraga. Kvartiraga birinchi bo'lib mushukni kiritishning qadimgi an'anasi bor, u uyning barcha burchaklarini o'rganadi va unda yashashga roziligini e'lon qiladi. XML faylidagi ma'lumotlarni MenuInflater ob'ektiga shu tarzda ishga tushiramiz.

Loyihani boshlang. Endi sarlavhaning o'ng tomonida qatorda joylashgan uchta nuqta belgisini ko'rasiz vertikal chiziq. Menyu bandini ko'rish uchun belgini bosing Sozlamalar.

Siz taxmin qilganingizdek, element element alohida menyu bandi uchun javobgardir. Xuddi shu tamoyildan foydalanib, menyu uchun faqat identifikator va matnni o'zgartirgan holda yana uchta elementni qo'shamiz:

Loyihani ishga tushiring va menyuni qayta chaqirib ko'ring. Siz uchta yangi elementni ko'rasiz.

Variantlar id Va sarlavha hech qanday tushuntirish kerak emas. Parametr orderInCategory menyu bandlarini ko'rsatish uchun o'z tartibingizni o'rnatish imkonini beradi. Aytaylik, siz beshta menyu elementini yaratdingiz, lekin ular ekranda paydo bo'lish tartibi haqida hali qaror qilmadingiz. Menyu elementlari uchun kod bloklarini doimiy ravishda kerakli tartibda siljitmaslik uchun siz ushbu parametrdan foydalanishingiz mumkin.

Va nihoyat, muhim xususiyat ilova: showAsAction ichida menyu harakatini belgilaydi ActionBar. Ma'nosi hech qachon degani, menyu elementi sarlavhada ko'rinmasligi kerak, lekin faqat qalqib chiquvchi menyuda, ya'ni. uch ochko ortda qolish. Agar siz qiymatni o'rnatsangiz har doim, keyin ishora qiling Sozlamalar ilovangizning sarlavhasida darhol paydo bo'ladi. Qadriyatlar ham mavjud ifRooms, Matn bilan Va collapseActionView. O'zingiz sinab ko'ring. Masalan, ifRoom agar bo'sh joy ruxsat etsa, menyu bandini ko'rsatadi. Agar nuqtalar ko'p bo'lsa, ular faqat yo'lda qoladilar. Qoida tariqasida, ushbu parametr uchta nuqta ustiga keraksiz bosishni oldini olish uchun tez-tez bajariladigan operatsiyalar uchun juda qisqa so'z yoki belgini ko'rsatadi.

Atributga e'tibor bering ilova: showAsAction, bu nomlar maydoniga ishora qiladi xmlns:app="http://schemas.android.com/apk/res-auto". Bir paytlar bunday nomlar maydoni mavjud bo'lmagan va loyihalar atributdan foydalangan android: showAsAction standart nom maydonidan. Agar studiya xato haqida shikoyat qilsa, kodni tahrirlang.

Menyu bandlari bajarilmasa foydali ish. Har qanday elementni bosish ko'rinadigan oqibatlarsiz menyuni yopadi. Biz hali bosishlarni boshqarish uchun kod yozmadik.

Menyu bandlarini tanlash

Menyu yaratishni o'rgandik. Ammo hozircha bu befoyda, chunki menyu elementlari bizning bosishimizga hech qanday munosabat bildirmaydi. Menyu elementini bosish uchun boshqa usul ishlatiladi. onOptionsItemSelected(). Keling, oldingi misoldagi kabi printsipdan foydalangan holda usul qo'shamiz. Keling, bo'sh joyni olamiz.

@Override umumiy mantiqiy onOptionsItemSelected(MenuItem elementi) ( super.onOptionsItemSelected(element); ni qaytaring)

Parametr element menyu elementi uchun javobgardir. Menyu identifikatorini usul orqali olishingiz kerak getItemId() va uning kodini ko'rsating. Menyu odatda bir nechta elementlardan iborat bo'lganligi sababli, konstruktsiyalardan foydalanish qulay agar/boshqa yoki almashtirish. Ma'lumotni ko'rsatish uchun biz matn yorlig'idan foydalanamiz. Faoliyat ekraningizga komponent qo'shing TextView. Siz mavjudidan foydalanishingiz mumkin TextView"Salom dunyo!" yozuvi bilan unga identifikatorni bering.

android: id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Salom dunyo!"/>

Tanlangan menyu elementi uchun shablonga kod qo'shamiz:

@Override umumiy mantiqiy onOptionsItemSelected(MenuItem element) ( // tanlangan menyu elementining identifikatorini oling int id = item.getItemId(); TextView infoTextView = (TextView) findViewById(R.id.textView); // Tanlanganlar uchun operatsiyalar menyu elementini almashtirish ( id) ( R.id.action_cat1: infoTextView.setText("Siz mushukni tanladingiz!"); rost qaytaring; R.id.action_cat2 holati: infoTextView.setText("Siz mushukni tanladingiz!"); return true; case R. id.action_cat3: infoTextView.setText("Siz mushukchani tanladingiz!"); true qaytaring; sukut bo'yicha: super.onOptionsItemSelected(element); ) )

Ilovani ishga tushiring, menyuni chaqiring va istalgan menyu bandini tanlang. Matn maydonida xabar paydo bo'lishi kerak.

Mavjud muqobil yo'l XML orqali tugmani bosish bilan ishlashga o'xshaydi (Android 3.0 dan beri). Siz atribut qo'shishingiz mumkin android: onClick menyu resurslarida va siz usul chaqiruvidan foydalanishingiz shart emas onOptionsItemSelected(). Yordamida android: onClick menyu bandini tanlashda kerakli usulni belgilashingiz mumkin. Ushbu atributni elementga qo'shing Sozlamalar

Endi faoliyat kodida biz quyidagilarni yozamiz:

// Sozlamalar menyusi elementi atributi android:onClick="onSettingsMenuClick" ga o'rnatildi umumiy bekor onSettingsMenuClick(MenuItem element) ( TextView infoTextView = (TextView) findViewById(R.id.textView); infoTextView.setTexts("Siz Sozlamani tanladingiz. Buyum, mushukni tanlash yaxshidir"); )

Kalitlar

Menyu elementlarining ko'rinishi kalitlar yordamida ko'rinishga o'zgartirilishi mumkin. Buni amalga oshirish uchun elementni qo'shishingiz kerak guruh atribut bilan android:checkableBehavior="bitta":

Men bu rejimda unchalik ko'p narsani ko'rmayapman. Va biz buni hisobga olmaymiz.

Dizayn rejimi

Android Studio 2.2 da qo'shilgan grafik rejimi ekranga yangi komponentlar qo'shish uchun asboblar paneliga o'xshash menyularni qurish. Menyu paneli to'rt elementdan iborat: Menyu elementi, Elementni qidirish, Menyu, Guruh.

Printsip bir xil, kerakli elementni tanlang va uni ekranga menyu maydoniga torting. Agar siz menyularni qo'lda yaratishni o'rgangan bo'lsangiz, unda bu usul sizga hech qanday qiyinchilik tug'dirmaydi. Uning yordamida siz tezda menyu tuzilishini chizishingiz va keyin uni qo'lda sozlashingiz mumkin.

Honeycomb (Android 3.0) dan oldin barcha Android qurilmalarida ekran ostida "menyu" tugmasi mavjud edi. Ishlab chiquvchilar undan o'z xohishlariga ko'ra foydalanishlari mumkin edi; ko'plab ilovalarning interfeyslari ushbu tugma atrofida qurilgan. Planshetga yo'naltirilgan Honeycomb uchinchi yilda mexanik (va sensorli) tugmalardan voz kechish uchun qadam tashladi. Android versiyalari ActionBar klassi paydo bo'ldi, bu foydalanuvchiga ruxsat berdi tez kirish harakatlar paneli deb nomlangan maxsus panel orqali dastur sozlamalariga o'ting. Google dasturchilarining fikriga ko'ra, kelajak Action Barga tegishli va dasturchilar "menyu" tugmasidan foydalanishni to'xtatishlari kerak. Hozirgi vaqtda bozorda mexanik yoki smartfonlar ustunlik qilmoqda teginish tugmasi ekran ostida, lekin Ice Cream Sandwich paydo bo'lishi bilan vaziyat keskin o'zgarishi mumkin. Ishlab chiquvchi sifatida siz uchun bunday qurilmalarning paydo bo'lishiga oldindan tayyorgarlik ko'rish va bugungi kunda Action bar kontseptsiyasidan foydalanish juda muhimdir.

Bir qarashda, bu panel hali amalga oshirilmagan Android 2.x uchun dasturlarni ishlab chiqishda Harakatlar panelidan foydalanish muammolarga olib kelishi mumkin. Biroq, bu erda hech qanday muammo yo'q. Hech kim sizga "menyu" tugmasi mavjud bo'lgan qurilmalarda foydalanishni davom ettirishni taqiqlamaydi, ammo Harakatlar panelini qo'shish sizdan bir necha qator kod yozishni talab qiladi.

Agar men ushbu maqolani bitta jumlaga jamlamoqchi bo'lsam, u shunday eshitiladi: " TargetSdkVersion-ni 14-ga o'rnating va harakatlar paneliga joylashtirilishi kerak bo'lgan menyu bandlarini showAsAction="ifRoom" tegi bilan belgilang.".

Android-dagi sozlamalar menyusining yakuniy yo'q qilinishi

Menyu tugmasidan foydalanishni to'xtatishning o'zi etarli emas, siz kontseptsiyani boshingizdan butunlay chiqarib tashlashingiz kerak. Menyu yaratmang, barcha kerakli tugmalarni bevosita faoliyat ichida yarating. Agar ba'zi harakatlar panelga to'g'ri kelmasa, ularni qo'shimcha ochiladigan menyuga qo'shing (harakatning to'lib ketishi). Quyidagi rasmda panelning o'ng tomonida qidirish tugmasi va qo'shimcha menyusi bo'lgan harakatlar paneli ko'rsatilgan.

Agar ilovangiz ostida yaratilgan bo'lsa eski versiya Android (an'anaviy ravishda menyudan foydalanadi), keyin Android 3 planshetida ishga tushirilganda, ekranning pastki qismida ikkinchi filialning telefonlarida mavjud bo'lgan uchta tugmani taqlid qiluvchi panel ko'rsatiladi.

Terminologiya juda chalkash, ammo harakatlar to'ldirilishi menyusi oddiy sozlamalar menyusidan butunlay boshqacha tushunchadir. Menyuni ilovaning barcha sozlamalari uchun konteyner sifatida ko'rib chiqish o'rniga, siz asosiy sozlamalarni joylashtiradigan panelni yaratasiz. Barcha ahamiyatsiz narsalar ochiladigan menyuga joylashtiriladi, u panelning o'ng tomonidagi uchta nuqta (Action overflow tugmasi) tugmachasini bosish orqali chaqiriladi.

Amalni to'ldirish tugmasi

Agar siz Android 2.3 va undan pastroq versiyalar uchun yozilgan ilovalarni ekran ostidagi tugmalari bo'lmagan qurilmalarda (masalan, Honeycomb yoki Galaxy Nexus planshetlarida) ishga tushirgan bo'lsangiz, ehtimol siz quyidagi paneldagi uchta tugma tasviri yonida ekanligini payqadingiz. Action overflow tugmasi paydo bo'ladi (bir-birining ustiga uchta nuqta). Bu murosaning bir turi, ammo unchalik muvaffaqiyatli emas. Sozlamalar menyusidan umuman foydalanmaydigan ilovalarda bu tugma hech narsa qilmaydi, foydalanuvchilarni bezovta qiladi. Shuning uchun, nazorat qilish juda yaxshi yechim bo'ladi Android versiyasi, va agar dasturingiz Android 3.0+ ostida ishlayotgan bo'lsa, ushbu tugmani o'chirib tashlang navigatsiya paneli va Harakatlar panelidan foydalaning. Ushbu yondashuv dasturning eski qurilmalar bilan mosligini saqlab qolish va uni yangilari uchun yanada jozibador qilish imkonini beradi.

Agar dasturingiz tugmalarsiz qurilmalarda ishlayotgan bo'lsa, tizim maydon qiymatiga qarab navigatsiya paneliga harakat to'ldirishni qo'shish yoki qo'shishni hal qiladi. manifestda. Mantiq quyidagicha

  • Agar siz minSdkVersion yoki targetSdkVersion ni 11 dan katta qiymatga o'rnatsangiz, tizim bu tugmani qo'shmaydi.
  • Boshqa tomondan, dasturni Android 3.0 va undan yuqori versiyalarida ishga tushirganingizda tizim ushbu tugmani yaratadi.
  • Faqatgina istisno, minSdkVersion ni 10 yoki undan pastroqqa o'rnatganingizda; targetSdkVersion 11, 12 yoki 13-da va ActionBar-dan foydalanmasa, tizim ushbu tugmani Android 4.0 va undan yuqori versiyalarida ishlaydigan telefonlarga (planshetlarga emas) qo'shadi. Ushbu istisno quyidagi fikrga asoslanadi: agar siz bir vaqtning o'zida ikkinchi filialning telefonlari va uchinchisi planshetlari uchun dastur ishlab chiqayotgan bo'lsangiz, unda siz telefonlarda menyu tugmasi bo'lishi kerak deb o'ylaysiz, lekin planshetlarda yo'q.

Shunday qilib, navigatsiya panelidagi ortiqcha harakat tugmachasini o'chirib qo'ymoqchi bo'lsangiz, targetSdkVersion ni 14 ga o'rnatishingiz kerak (dastur eski qurilmalarda ishlashi uchun minSdkVersion pastroq qiymatga o'rnatilishi mumkin).

Harakatlar paneli kontseptsiyasiga o'tish

Agar sizda parametrlar menyusidan foydalanadigan harakatlaringiz bo'lsa (onCreateOptionsMenu() yordamida yaratilgan), u holda navbar panelidan tugmani olib tashlash orqali (targetSdkVersion=14 o'rnatish orqali) foydalanuvchiga variantlarga kirishning muqobil vositalarini taqdim etishingiz kerak. Yaxshiyamki, siz ko'p ish qilishingiz shart emas, chunki tizim avtomatik ravishda harakatlar panelini yaratadi.

Teglarga showAsAction="ifRoom" qo'shing harakatlar satriga joylashtirmoqchi bo'lgan elementlar. Harakatlar paneliga qaysi elementni kiritishingizga ishonchingiz komil bo'lmasa, Android Dizaynning Harakatlar paneli qo'llanmasini ko'rib chiqing.

Dasturingizning idrokini yanada yaxlit qilish uchun piktogrammalardan foydalanishni tavsiya qilamiz Android UX jamoasi. Arxiv .

Android ilovasidan Action Barni qanday olib tashlash mumkin

Agar sizga Harakatlar paneli kerak bo'lmasa, uni istalgan faoliyatdan yoki umuman ilovadan olib tashlashingiz mumkin. Bu sozlamalar menyusidan foydalanmaydigan o'yinlar va dasturlar uchun tegishli bo'lishi mumkin. Harakatlar panelini Theme.Holo.NoActionBar yoki Theme.DeviceDefault.NoActionBar yordamida olib tashlashingiz mumkin.

Agar siz ushbu diagrammalardan foydalanmoqchi bo'lsangiz, lekin saqlang orqaga qarab mos keladi, turli mavzularni o'rnatish uchun resurslarni boshqarish tizimidan foydalanishingiz mumkin turli versiyalar platformalar. Ushbu mavzu batafsilroq yoritilgan Bu yerga. Siz yaratishingiz kerak bo'ladi o'z mavzusi, bu joriy versiyaga qarab turli platformalarning mavzularini meros qilib oladi.

Masalan, siz arizangiz uchun mavzuni e'lon qilishingiz mumkin

(yoki tegdagi muayyan faoliyat uchun ).

Android 2-da ishlaydigan qurilmalar uchun res/values/themes.xml-ga quyidagi mavzuni kiriting.



Honeycomb uchun res/values-v11/themes.xml-ga quyidagi mavzuni qo'shing.



Ishga tushganda, API versiyasiga qarab, tizim tegishli mavzuni tanlaydi.

Xulosa

Keling, maqolaning asosiy g'oyalari va fikrlarini qisqacha takrorlaymiz:

  • Yangilarida Android qurilmalari"Menyu" tugmasi bo'lmasligi mumkin, shuning uchun dasturlarni ishlab chiqishda uni umuman ishlatmaslik yaxshiroqdir.
  • targetSdkVersion=14 sozlang va ilovangizni Android 4.0 da sinab ko'ring.
  • showAsAction="ifRoom" tegini qo'shing menyu bandi, agar siz avtomatik ravishda harakatlar paneliga o'tishni xohlasangiz.
  • Agar ilovangiz ActionBar-dan foydalanmasa, uni Theme.Holo.NoActionBar va Theme.DeviceDefault.NoActionBar mavzularidan foydalanib olib tashlashingiz mumkin.