Sobes.tech
Junior

Android resurslarida nima bor va ularga qanday ma'lumotlar saqlanishi mumkin?

sobes.tech AI

AIdan javob

Android resurslari ilovaga turli tashqi ma'lumotlarni, masalan, rasmlar, matn satrlari, tovush fayllari, uslublar, mavzular, foydalanuvchi interfeysi sxemalari va boshqalarni o'z ichiga oladi, ular kodga to'g'ridan-to'g'ri joylashtirilmagan. Ular ma'lumotlarni ilova mantiqidan ajratishga, lokalizatsiya qilishga va qurilmaning turli konfiguratsiyalarini (ekran o'lchami, orientatsiya va boshqalar) boshqarishga imkon beradi.

Android resurslarida quyidagi ma'lumot turlari saqlanishi mumkin:

  • Satrlari: Ilovada ishlatiladigan matn satrlari. Ular strings.xml fayllarida saqlanadi.
  • O'lchovlar: dp, sp, px kabi o'lchamlar. Ular dimens.xml fayllarida saqlanadi.
  • Ranglar: ARGB yoki RGB formatidagi rang ta'riflari. Ular colors.xml fayllarida saqlanadi.
  • Uslublar va mavzular: UI elementlari va ilovaning umumiy ko'rinishini belgilash uchun atributlar to'plamlari. Ular styles.xml va themes.xml fayllarida saqlanadi.
  • Sxemalar: UI elementlarining tuzilishini va joylashishini belgilovchi XML fayllar. Ular layout/ katalogida saqlanadi.
  • Rasmlar va ikonalar: PNG, JPEG, GIF, WebP formatidagi fayllar va vektorli resurslar. Ular drawable/ va mipmap/ kataloglarida saqlanadi.
  • Tovush va video fayllar: Tovush va video resurslari. Ular raw/ katalogida saqlanadi.
  • Har qanday turdagi XML fayllar: Konfiguratsiya yoki ma'lumotlar uchun ishlatiladigan boshqa XML fayllar. Ular xml/ katalogida saqlanadi.
  • Shriftlar: Font fayllari (masalan, .ttf, .otf). Ular font/ katalogida saqlanadi.
  • Animatsiyalar: Animatsiyalar ta'riflari (tween, frame, holatlar ro'yxati). Ular anim/ va animator/ kataloglarida saqlanadi.

Resurslarga kirish R nomli avto-generate qilingan klass orqali amalga oshiriladi, u har bir resurs uchun statik identifikatorlarni o'z ichiga oladi.

// Matn resursiga kirish misoli
String appName = getResources().getString(R.string.app_name);

// Rasmga kirish misoli
Drawable icon = getResources().getDrawable(R.drawable.app_icon);

// Layoutni yuklash misoli
setContentView(R.layout.activity_main);