Blog

Android resurslarini tashkil qilish va kirish

Uncategorized @uz

Android resurslarini tashkil qilish va kirish

Yaxshi Android ilovasini yaratish uchun foydalanadigan yana bir qancha narsalar mavjud. Ilovani kodlashdan tashqari , siz kodingiz ishlatadigan statik tarkib kabi turli xil boshqa manbalarga g’amxo’rlik qilasiz , masalan bitmaplar, ranglar, joylashuv ta’riflari, foydalanuvchi interfeysi satrlari, animatsiya ko’rsatmalari va boshqalar. Ushbu manbalar har doim loyihaning res / katalogi ostidagi turli xil kataloglarda alohida saqlanadi .

Ushbu o’quv qo’llanmada siz o’zingizning dastur resurslaringizni qanday tashkil qilishingiz, muqobil manbalarni belgilashingiz va ularga o’zingizning ilovalaringizda kirishingiz mumkinligi tushuntiriladi.

Android Studio-da manba tashkil qiling

MyProject/
   app/
      manifest/
         AndroidManifest.xml
   java/
      MyActivity.java  
      res/
         drawable/  
            icon.png  
         layout/  
            activity_main.xml
            info.xml
         values/  
            strings.xml 
				 

 

N.Katalog va Resurs turi
1anim/

Xususiy animatsiyalarni aniqlaydigan XML fayllari. Ular res / anim / papkasida saqlanadi va R.anim sinfidan foydalaniladi.

2color/

Ranglarning davlat ro’yxatini belgilaydigan XML fayllari. Ular res / color / da saqlanadi va ularga R.color sinfidan kirish mumkin .

3drawable/

.Png, .jpg, .gif yoki XML fayllari kabi rasm fayllari, bitmapalar, holatlar ro’yxati, shakllar, animatsiya uchun tuzilgan. Ular res / drawable / da saqlanadi va ularga R.drawable sinfidan kirish mumkin .

4layout/

Foydalanuvchi interfeysi tartibini belgilaydigan XML fayllari. Ular res / layout / da saqlanadi va ularga R.layout sinfidan kirish mumkin .

5menu/

Variantlar menyusi, kontekst menyusi yoki pastki menyu kabi dastur menyusini belgilaydigan XML fayllari. Ular res / menu / da saqlanadi va R.menu sinfidan foydalaniladi.

6raw/

Xom shaklida saqlash uchun o’zboshimchalik bilan fayllar. Siz bunday xom fayllarni ochish uchun R.raw.filename bo’lgan resurs identifikatori bilan Resources.openRawResource () ga qo’ng’iroq qilishingiz kerak .

7values/

Qatorlar, butun sonlar va ranglar kabi oddiy qiymatlarni o’z ichiga olgan XML fayllari. Masalan, mana shu katalogda yaratishingiz mumkin bo’lgan fayl nomlari bo’yicha ba’zi qoidalar –

  • arrays.xml resurs massivlari uchun va R.array sinfidan kirish.
  • integer.xml manba tamsayıları uchun va R.integer sinfidan foydalaniladi.
  • bools.xml uchun manba boolean va R.bool sinfidan foydalanish mumkin.
  • color.xml rang qiymatlari uchun va R.color sinfidan foydalaniladi.
  • dimens.xml o’lchov qiymatlari uchun va R.dimen sinfidan olingan.
  • satrlari uchun strings.xml va R.string sinfidan foydalaniladi.
  • styles.xml uchun uslublar va R.style sinfidan foydalanish mumkin.
8xml /

Resources.getXML () ga qo’ng’iroq qilib, ish vaqtida o’qish mumkin bo’lgan o’zboshimchalik bilan XML fayllari . Siz bu erda ishlash vaqtida ishlatiladigan turli xil konfiguratsiya fayllarini saqlashingiz mumkin.

Muqobil manbalar

Sizning arizangiz muayyan qurilma konfiguratsiyasini qo’llab-quvvatlash uchun muqobil manbalarni taqdim etishi kerak. Masalan, siz turli xil ekran o’lchamlari uchun muqobil tortiladigan manbalarni (ya’ni rasmlarni) va turli tillar uchun muqobil mag’lubiyat manbalarini kiritishingiz kerak. Ish vaqtida Android qurilmaning joriy konfiguratsiyasini aniqlaydi va sizning ilovangiz uchun tegishli resurslarni yuklaydi.

Resurslar to’plami uchun konfiguratsiyaga xos alternativalarni ko’rsatish uchun quyidagi amallarni bajaring –

  • Res / name-da <resources_name> – <config_qualifier> shaklida yangi katalog yarating . Bu erda resources_name yuqoridagi jadvalda keltirilgan, maket, chizilgan va hokazo kabi har qanday manbalardan biri bo’ladi. Saralashda ushbu resurslardan foydalaniladigan individual konfiguratsiya ko’rsatiladi. Turli xil manbalar uchun saralashlarning to’liq ro’yxati uchun rasmiy hujjatlarni tekshirishingiz mumkin.
  • Tegishli muqobil manbalarni ushbu yangi katalogda saqlang. Resurs fayllari quyida keltirilgan misolda ko’rsatilgandek standart resurs fayllari bilan bir xil nomlanishi kerak, ammo bu fayllar muqobilga xos tarkibga ega bo’ladi. Masalan, rasm fayllari nomi bir xil bo’lsa-da, lekin yuqori aniqlikdagi ekran uchun uning o’lchamlari yuqori bo’ladi.

Quyida standart ekran uchun tasvirlarni va yuqori aniqlikdagi ekran uchun muqobil rasmlarni ko’rsatadigan misol keltirilgan.

MyProject/
   app/
      manifest/
         AndroidManifest.xml
   java/
      MyActivity.java   
      res/
         drawable/  
            icon.png
            background.png
         drawable-hdpi/  
            icon.png
            background.png  
         layout/  
            activity_main.xml
            info.xml
         values/  
            strings.xml 

Quyida standart til va arab tilining muqobil tartibini belgilaydigan yana bir misol keltirilgan.

MyProject/
   app/
      manifest/
         AndroidManifest.xml
   java/
      MyActivity.java   
      res/
         drawable/  
            icon.png
            background.png
         drawable-hdpi/  
            icon.png
            background.png  
         layout/  
            activity_main.xml
            info.xml
         layout-ar/
            main.xml
         values/  
            strings.xml 

Resurslardan foydalanish

Ilovani ishlab chiqishda siz o’zingizning kodingizda yoki XML fayllaringizda aniqlangan manbalarga kirishingiz kerak bo’ladi. Quyidagi bo’lim har ikkala stsenariyda sizning resurslaringizga qanday kirishni tushuntiradi –

Koddagi manbalardan foydalanish

Sizning Android-ilovangiz to’planganda res / katalogingizda mavjud bo’lgan barcha manbalar uchun manba identifikatorlarini o’z ichiga olgan R klassi hosil bo’ladi . Siz sub-katalog va manba nomi yoki to’g’ridan-to’g’ri manba identifikatori yordamida ushbu manbaga kirish uchun R sinfidan foydalanishingiz mumkin.

Misol

Foydalanish uchun mahallasi / chizma / myimage.png va o’rnatilgan IMAGEVIEW siz kodi quyidagi foydalanadi –

ImageView imageView = (ImageView) findViewById(R.id.myimageview);
imageView.setImageResource(R.drawable.myimage);

Kodning birinchi satri LayVet faylida id myimageview bilan aniqlangan ImageView-ni olish uchun R.id.myimageview- dan foydalanadi . Kodning ikkinchi satri R.drawable.myimage- dan / res ostidagi tortiladigan pastki katalogda myimage nomi bilan rasm olish uchun foydalanadi .

Misol

Res / values ​​/ strings.xml quyidagi ta’rifga ega bo’lgan keyingi misolni ko’rib chiqing –

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string  name="hello">Hello, World!</string>
</resources>

Endi TextView ob’ektida matnni ID msg yordamida manba identifikatoridan foydalangan holda o’rnatishingiz mumkin –

TextView msgTextView = (TextView) findViewById(R.id.msg);
msgTextView.setText(R.string.hello);

Misol

Res / layout / activity_main.xml tartibini quyidagi ta’rif bilan ko’rib chiqing –

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent" 
   android:layout_height="fill_parent" 
   android:orientation="vertical" >
   
   <TextView android:id="@+id/text"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Hello, I am a TextView" />

   <Button android:id="@+id/button"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Hello, I am a Button" />
      
</LinearLayout>

Ushbu dastur kodi ushbu faoliyat tartibini onCreate () usulida quyidagi tarzda yuklaydi –

public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);
}

XML-da resurslardan foydalanish

Rang manbai va mag’lubiyat manbasini o’z ichiga olgan quyidagi XML res / values ​​/ strings.xml faylini ko’rib chiqing –

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <color name="opaque_red">#f00</color>
   <string name="hello">Hello!</string>
</resources>

Endi siz ushbu resurslardan quyidagi rang faylida matn rangini va matn satrini quyidagicha sozlash uchun foydalanishingiz mumkin –

<?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:textColor="@color/opaque_red"
   android:text="@string/hello" />

Agar siz avvalgi bobni yana bir bor ko’rib chiqsangiz, men » Hello WorldMasalan, va men ushbu bobda bayon qilingan barcha tushunchalarni yaxshiroq tushunishingizga aminman. Shunday qilib, avvalgi bobni ishlash namunasi va turli xil resurslardan qanday qilib juda oddiy darajada foydalanganligimni tekshirishni maslahat beraman.

Leave your thought here

Email manzilingiz chop etilmaydi. Majburiy bandlar * bilan belgilangan

Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
  • Attributes
  • Custom attributes
  • Custom fields
Compare
Wishlist 0
Open wishlist page Continue shopping