Junior
Ի՞նչ են Android-ի ռեսուրսները և ինչ տվյալներ կարելի է դրանց մեջ պահել:
sobes.tech AI
Պատասխան AI-ից
Android- ում ռեսուրսները արտաքին տվյալներ են, որոնք օգտագործվում են հավելվածով, բայց չեն ներառված ուղիղ կոդում: Նրանք բաժանված են հավելվածի տրամաբանությունից և պահվում են res պանակի ենթապանակներում՝ նախագծի հիմնական պանակում: Android-ը տրամադրում է գործիքների հավաքածու՝ ռեսուրսներին հասանելիություն և կառավարում:
Ռեսուրսները օգտագործվում են՝
- հավելվածի տեղայնացման համար (տարբեր լեզուների աջակցություն)
- տարբեր չափերի և լուծաչափերի էկրանների համար հարմարեցնելու համար
- դիզայնը տրամաբանությունից բաժանելու համար
- ինտերֆեյսի թարմացումները հեշտացնելու համար
Ռեսուրսներում կարելի է պահել՝
- Drawable: տարբեր գրաֆիկական տարրեր, ինչպես պատկերներ (PNG, JPEG, GIF), XML ձևավորումներ, անցումներ և այլն: պահվում են
drawableենթապանակներում:<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#FF0000"/> <corners android:radius="10dp"/> </shape> - Layout: XML ֆայլեր, որոնք նկարագրում են Activity, Fragment կամ View-ի կառուցվածքը: պահվում են
layoutենթապանակներում:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Բարև, աշխարհ!"/> </LinearLayout> - Mipmap: օպտիմիզացված պատկերներ հավելվածի նշանների համար տարբեր խտությունների համար: Ավելի նախընտրելի է օգտագործել նշանների համար, քան
drawable: պահվում ենmipmapենթապանակներում՝ օրինակmipmap-hdpi,mipmap-xhdpi: - String: տողային արժեքներ, որոնք օգտագործվում են հավելվածում: Հեշտ է տեղայնացնել տեքստը: պահվում են XML ֆայլերում՝
valuesենթապանակներում, օրինակ՝values/strings.xml:<resources> <string name="app_name">Իմ հավելվածը</string> <string name="welcome_message">Բարի գալուստ!</string> </resources> - Style: ոճերի սահմանումներ, որոնք կենտրոնական կառավարում են տեսքի հատկությունները: պահվում են XML ֆայլերում՝
valuesենթապանակներում, օրինակ՝values/styles.xml:<resources> <style name="MyTextViewTextAppearance" parent="android:TextAppearance.Medium"> <item name="android:textColor">#000000</item> <item name="android:textStyle">bold</item> </style> </resources> - Theme: թեմաների սահմանումներ, որոնք կիրառվում են ամբողջ Activity կամ հավելվածի վրա: ժառանգում են ոճերից: պահվում են XML ֆայլերում՝
valuesենթապանակներում: - Array: տողային արժեքների, ամբողջ թվերի կամ ռեսուրսների հղումների զանգվածներ: պահվում են XML ֆայլերում՝
valuesենթապանակներում:<resources> <string-array name="planets_array"> <item>Մերկուրի</item> <item>Վեներա</item> <item>Երկիր</item> <item>Մարս</item> </string-array> </resources> - Color: գույների սահմանումներ հիսթոգրական արժեքների կամ այլ գույների հղումների ձևաչափով: պահվում են XML ֆայլերում՝
valuesենթապանակներում, օրինակ՝values/colors.xml:<resources> <color name="colorPrimary">#008577</color> <color name="colorAccent">#03DAC5</color> </resources> - Dimension: չափերի սահմանումներ, ինչպիսիք են մարժանները, padding-ները, տառաչափերի չափերը և այլն, նշելով միավորները (dp, sp, pt, px, mm, in): պահվում են XML ֆայլերում՝
valuesենթապանակներում, օրինակ՝values/dimens.xml:<resources> <dimen name="margin_small">8dp</dimen> <dimen name="font_size_medium">16sp</dimen> </resources> - Raw: ցանկացած ֆայլ՝ անշեղ տեսքով (ձայն, տեսանյութ, տեքստային ֆայլեր և այլն): Դоступը նրանց via input stream: պահվում են
rawենթապանակներում: - XML: ցանկացած XML ֆայլեր, որոնք կարող են վերլուծվել հավելվածում (օրինակ՝ կոնֆիգուրացիոն ֆայլեր): պահվում են
xmlենթապանակներում:
Դоступը ռեսուրսներին իրականացվում է ավտոմատորեն ստեղծված R դասի միջոցով: Օրինակ՝ app_name տողային ռեսուրսին հասնելու համար:
// Java
String appName = getResources().getString(R.string.app_name);
// Kotlin
val appName = resources.getString(R.string.app_name)
Ռեսուրսների օգտագործումը թույլ է տալիս ստեղծել ճկուն և հեշտ պահպանվող Android հավելվածներ։