Մասնագիտական ուղեցույց: Ինչպես Անդրոիդ հավելածներ մշակելիս ստեղծել Custom View

Ամսաթիվ

Բլոգի այցելուներից Ռոբերտ Թադևոսյանը ցանկացել է իր մասնագիտական ուղեցույցով կիսվել բլոգում՝ Անդրոիդ հավելվածներ մշակողների համար:

Այս հոդվածում կներկայացնեմ, թե ինչպես ստեղծել ձեր CustomView-ն Android սարքերի համար հավելածներ մշակելիս: Եթե ծանոթ չեք Android հավելվածների մշակմանը,  կարող եք կարդալ պաշտոնական հղումով: Հոդվածում կօգտագործեմ Kotlin ծրագրավորման լեզուն (պաշտոնական ծրագրավորման  լեզու `Android հավելվածների մշակման համար): Այստեղ կարող եք կարդալ Կոտլինի մասին:

Նախքան հոդվածի հիմնական մասին անցնելը, առաջարկում եմ հասկանալ երկու բան.

1) Ի՞նչ է իրենից ներկայացնում CustomView-ն Android-ում։

CustomView-ն UI(User Interface)-ի տարր է, որն ամբողջությամբ ստեղծվում է մշակողի կողմից: CustomView-երը ստեղծվում են՝ ընդլայնելով View դասը (Class), որն ապահովում է օգտատերերի փոխազդեցությունները (User Interaction) նկարելու և մշակելու հիմնական շրջանակը:

2) Ե՞րբ կամ ի՞նչ պայմաններում կարող է անհրաժեշտ լինել ստեղծել ձեր CustomView-երը Android հավելվածներ մշակելիս:

Android-ում CustomView ստեղծելը կարևոր հմտություն է այն մշակողների համար, ովքեր ցանկանում են ստեղծել նորարար և եզակի հավելվածներ: CustomView-երն օգտագործվում են, երբ Android-ի կողմից տրամադրված առկա View-երը չեն համապատասխանում դիզայնի կամ ֆունկցիոնալության հատուկ պահանջներին: CustomView-երը ծրագրավորողներին հնարավորություն են տալիս ստեղծելու բարդ տեսողական տարրեր, որոնք բարելավում են օգտատիրոջ փորձը՝ միաժամանակ ապահովելով ճկունություն և անհատականացում: Այս հոդվածում մենք կդիտարկենք, թե ինչպես քայլ առ քայլ ստեղծել CustomView-եր Android-ում:


Մի փոքր վերացական է հնչում, այնպես չէ՞: Եկեք գործի անցնենք, որպեսզի ավելի պարզ լինի)

Եվ այսպես, սկզբի համար բացեք Android Studio-ն և ստեղծեք դատարկ նախագիծ (Android Studio - Android-ի համար հավելվածների մշակման պաշտոնական ինտեգրված մշակման միջավայր (IDE)։ Չմոռանաք առաջին փուլում ընտրել Empty Activity: Նախագիծը ստեղծելուց հետո մենք կունենանք դատարկ գործունեություն (Activity) նշագրմամբ (layout) (MainActivity.kt, activity_main.xml) որոնք վերջում մեզ անհրաժեշտ կլինեն։ Ես նախագիծը կանվանեմ CustomView, դուք կարող եք ցանկացած անուն տալ:


Այնուհետև ստեղծեք նոր դաս (Class), մկնիկի աջ քլիք  «customview» թղթապանակի վրա, ընտրեք նոր -> Kotlin class/file, գրեք MyCustomView դասի անունը, ընտրեք class ցուցակից և սեղմեք Enter։


Մեր MyCustomView-ը պետք է ժառանգի View դասից, որը տրամադրում է «android»-ը:

Հաջորդ քայլում մենք պետք է override անենք onMeasure ֆունկցիան՝ հատուկ customView-ի չափը հաշվարկելու համար: 
Ահա թե ինչպես է դա արվում՝


Հաջորդը քայլում պետք է override անենք MyCustomView դասի onDraw ֆունկցիան, որպեսզի կարգավորեք customView-ի գծագիրը/տեսքը: Օգտագործեք Canvas օբյեկտը՝ դիզայնի առանձնահատկությունների հիման վրա հատուկ տեսք նկարելու համար: Այս օրինակում մենք չունենք կոնկրետ ձևավորում, քանի որ մենք դիտարկում ենք customView ստեղծելու միջոց և  այստեղ մենք գծելու ենք ընդամենը մոխրագույն ուղղանկյուն՝ սահմաններով: Գրեթե ամեն ինչ պատրաստ է, բայց հետաքրքրության և ավելի մանրամասն մշակման համար, ես առաջարկում եմ նոր պարամետրեր (attributes) ավելացնել մեր MyCustomView-ին՝ այն դարձնելով ավելի ճկուն օգտագործման համար: Դա անելու համար մենք պետք է ստեղծենք .xml ֆայլ մեր պարամետրերի համար: Մկնիկի աջ քլիք res/values ​​թղթապանակի վրա -> new -> values resource file, գրում ենք ֆայլի անունը (սովորաբար ես այս ֆայլը անվանում եմ attrs.xml), սեղմում ենք Enter: Հաջորդը, լրացրեք այս ֆայլը հետևյալ կերպ (տես ստորև ներկայացված սքրինշոթի օրինակով)


Մենք ավելացրել ենք երկու պարամետր՝ մեկը սահմանի գույնի, իսկ մյուսը՝ այդ սահմանի չափի (լայնության) համար: Այստեղ դուք կարող եք առաջարկել տարբեր տարբերակներ՝ կախված առաջադրանքից: Այս ատրիբուտները կարող են մուտք գործել  MyCustomView դասում և օգտագործվել customView-ի տեսքն ու վարքագիծը փոխելու համար: (տես հաջորդ սքրինշոթը):

Այժմ մենք պետք է կարգավորենք այս հատկանիշները մեր MyCustomView դասում(class): Մենք գրում ենք init{} բլոկը մեր դասում(class), և մենք կմշակենք այս հատկանիշները դրանում:


Մշակման համար մենք վերցնում ենք theme օբյեկտը մեզ հասանելի context օբյեկտից և կանչում ենք getStyledAttributes(attr, R.styleable.MyCustomView, 0, 0) ֆունկցիան, որը վերադարձնում է TypedArray տիպի օբյեկտ, որտեղից կառող ենք ստանալ հատուկ պարամետրերի արժեքները, ինչը ցուցադրված է վերևի սքրինշոթում:

Եվ վերջում մեզ մնում է միայն օգտագործել մեր MyCustomView-ն հավելվածում։ Ավելացնենք այն activity_main.xml-ում, որը ստեղծվել է սկզբում նախագծի ստեղծման ժամանակ:


Ավելացրեք customView-ն  layout-ի մեջ՝ օգտագործելով դասի անունը ամբողջովին՝ որպես XML տարրի անուն: Օգտագործեք customView-ն ձեր հավելվածի մեջ՝ ավելացնելով layout-ի մեջ կամ Kotlin կոդի միջոցով։

Վերջում սեղմեք Build -> Rebuild Project և ավարտելուց հետո մենք կարող ենք տեսնել մեր MyCustomView-ը նախադիտման մեջ:

Ընդհանուր խորհուրդներ Android-ում customView - եր ստեղծելու համար:

  • Օգտագործեք custom view-ի դասի onMeasure ֆունկցիան view  չափը սահմանելու համար:
  • Օգտագործեք Canvas - ը onDraw ֆունկցիայի մեջ գրաֆիկները և վիզուալները հատուկ տեսքով նկարելու համար:
  • Օգտագործեք AttributeSet պարամետրը ձեր custom view- ի դասի(class) կոնստրուկտորում՝ XML ֆայլից հատուկ ատրիբուտները կարդալու համար:
  • Մտածեք հատուկ դասավորության ֆայլերի օգտագործման մասին՝ view -երը խմբավորելու և հարմարեցված տեսքով դասավորելու համար:
Եզրափակելով կարելի է ասել, որ Android-ում custom view-ի ստեղծումը կարևոր հմտություն է ձեր հավելվածի ֆունկցիոնալությունը և տեսողական գրավչությունը բարելավելու համար: Կիրառելով custom view-եր՝ մշակողները կարող են ստեղծել բարդ և եզակի ինտերֆեյսեր, որոնք համապատասխանում են դիզայնի հատուկ պահանջներին: Այս հոդվածը տրամադրում է անհատական ​​դիտումներ ստեղծելու համապարփակ ուղեցույց, ինչպես նաև որոշ խորհուրդներ՝ ձեր մշակման գործընթացը բարելավելու համար: Պրակտիկայի և փորձի շնորհիվ դուք կկարողանաք ստեղծել ավելի նորարարական և արձագանքող(responsive) custom view- եր, որոնք ձեր հավելվածն առանձնացնում են մնացածից:

Ուղեցույցի հեղինակ՝ Ռոբերտ Թադևոսյան

Հավանեցի՞ր, դե տեղեկացրու ընկերներիդ,
կարդա նաև նմանատիպ գրառումները 😊

մեկնաբանություն Facebook-ի պրոֆիլով
0 մեկնաբանություն Google-ի պրոֆիլով

Գրել մեկնաբանություն