Parpiyev Islombek Mavzu: Android Studio muhitida menyular va dialog oynalar bilan ishlash



Download 0,96 Mb.
bet2/3
Sana30.04.2022
Hajmi0,96 Mb.
#596984
1   2   3
Bog'liq
Islombek

Menu bilan ishlaymiz.


Biz uchta elementdan iborat menyuni aniqladik, ammo xml fayli tarkibidagi aniqlashlarning o'zi menyuni hali yaratmayapti. Menyuni namoyish qilish uchun biz Activity sinfidan (MainActivity.java faylidan) foydalanishimiz kerak. Buning uchun onCreateOptionsMenu metodini bekor qilishingiz kerak. Keling, MainActivity.java fayliga o'tamiz va uni quyidagicha o'zgartiramiz:
package com.hojiakbar.mymeny;


import androidx.appcompat.app.AppCompatActivity;


import android.os.Bundle;
import android.view.Menu;


public class MainActivity extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menuim, menu);
return true;
}


}
getMenuInflater metodi MenuInflater ob'ektini oladi va uning inflate() metodini chaqiradi. Ushbu metod birinchi parametr sifatida xml-da bizning deklarativ menyuimizni ifodalovchi manbani oladi va uni ikkinchi parametr sifatida berilgan menu ob'ekti bilan to'ldiradi(bog'laydi).
Ilovani ishga tushiramiz va yuqori o'ng burchakdagi menyu tugmachasini bosamiz:




Menyu elementlarini bosish bilan ishlash.


Agar menyu elementlaridan birini bosgan bo'lsak, unda hech narsa bo'lmaydi. Amallarni menyuga bog'lash uchun MainActivity.java faylida onOptionsItemSelected-ni bekor qilishimiz kerak.
Tanlangan menyu bandini ekranda ko'rsatish uchun activity_main.xml fayliga id = header bilan TextView-ni qo'shamiz:

xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">


android:id="@+id/sozlaa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="sozlamaga kirildi"
android:textSize="24sp"
android:textColor="#CCCD001A"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />



MainActivity.java faylini o'zgartiramiz:


package com.example.android.menyuilova;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
TextView headerView = findViewById(R.id.header);
switch (id) {
case R.id.sozlamalar:
headerView.setText("Sozlamalar");
return true;
case R.id.ochish:
headerView.setText("Ochish");
return true;
case R.id.saqlash:
headerView.setText("Saqlash");
return true;
}
return super.onOptionsItemSelected(item);
}
}
Qaysi menyu tanlanganligini aniqlash uchun avval uning identifikatorini olamiz: int id = item.getItemId(). Keyin biz switch, case -dan foydalanamiz va kerakli variantni tanlaymiz va tanlovga qarab ma'lum amallarni bajaramiz - bizni kodda TextView matnini o'rnatadi.
Endi yana bir bor ilovani ishga tushirib ishlashini ko'ramiz:

Sozlamalar ni bosamiz




Download 0,96 Mb.

Do'stlaringiz bilan baham:
1   2   3




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