Plurals resurslari. Plurals satrlarning yana bir turini anglatadi. Bu buyumlar sonini tavsiflash uchun mo'ljallangan. Bu nima uchun? Masalan, ismni olaylik: u ko'pincha ishlatilgan songa qarab sonni o'zgartiradi: 1 gul, 2 gul, 5 gul. Bunday holatlar uchun p_lurals resursidan foydalaniladi.
Keling, bir misolni ko'rib chiqaylik. res/values papkasiga yangi resurs qo'shaylik. Keling, uni flowers deb ataymiz:
Uning tarkibini quyidagicha o'zgartiraylik:
- %d цветок
- %d цветка
- %d цветков
Resursni aniqlash uchun <plurals> elementidan foydalaniladi, buning uchun nom atributi mavjud bo'lib, u o'zboshimchalik bilan nomni qiymat sifatida qabul qiladi va keyinchalik ushbu resursga murojaat qiladi.
Satr satrlarning o'zi voris elementlari tomonidan kiritiladi <item> elementlari. Ushbu elementda ushbu satr ishlatilishini ko'rsatadigan qiymatga ega bo'lgan miqdor atributi mavjud. Ushbu atribut quyidagi qiymatlarni qabul qilishi mumkin:
zero: 0 o'lchamdagi miqdor uchun satr
one: satrga 1 miqdor (rus tilida - 1 bilan tugaydigan barcha miqdorlarni ko'rsatish uchun, 11dan tashqari)
two: 2 o'lchamdagi miqdor uchun satr
few: oz miqdordagi satr
many: katta sonlar uchun satr
other: boshqa barcha holatlar
Bunday holda, ko'p narsa o'ziga xos tilga bog'liq. Va tizimning o'zi ma'lum bir raqam uchun qanday qiymat olish kerakligini aniqlashga imkon beradi.
Ushbu resursdan faqat java kodida foydalanish mumkin. Shuning uchun biz MainActivity kodini o'zgartiramiz:
package com.example.viewapp;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
String rose = getResources().getQuantityString(R.plurals.flowers, 21, 21);
TextView textView = new TextView(this);
textView.setText(rose);
textView.setTextSize(26);
setContentView(textView);
}
}
Do'stlaringiz bilan baham: |