Դաս 13.1.2 – Android Development։ Relative Layout

0

Android RelativeLayout թույլատրում է ձեզ հատկորոշել թե ինչպես են child view-երըհարաբերական դասավորված: Յուրաքանչյուր view-ի դասավորվածությունը կարող է հատկորոշվել որպես հարբերականի քույր կամ եղբայր էլեմենտներ կամ հարաբերական դեպի ծնողը:

relative

RELATIVE LAYOUT

RelativeLayout Ատրիբուտներ

Հետևյլաները RelativeLayout-ի կարևոր ատրիբուտներ են −

Sr.No. Ատրիբուտ  & Նկարագրություն
1 android:id

Սա ID  է, որը յուրահատուկ կերպով ներկայացնում է նախագիծը:

2 android:gravity

Սա հատկորոշում է ինչպես օբյեկտը պետք է տեղակայվի բովանդակությունում, երկու X և Y կրճատումներ: Հնարավոր արժեքներն են  վերևի, ներքևի, ձախ, աջ, կենտրոնական ուղղահայաց, կենտրոնական հորիզոնական և այլն:

3 android:ignoreGravity

Սա ցույց է տալիս որ view-ն պետք է չազդվի ծանրություն:

Օգտագործելով RelativeLayout, կարող եք հավասարեցնել երկու էլեմենտներ աջ եզրագծով կամ մեկի մյուսի ներքևում, տեղակայված էկրանի կենտրոնում, ձախ մասում և այլն: Դեֆոլտով, բոլոր երեխաների view-երը տեղակայված են վերևի ձախ նախագծում, ապա պետք է բացատրեք յուրաքանչյուր view-ի դիրք, օգտագործելով տարբեր նախագծերի հատկություններ, որոնք հասանելի են RelativeLayout.LayoutParams-ից և մի քանի կարևոր ատրիբուտներ ներկայացված են ներքևում−

Sr.No. Ատրիբուտ & Նկարագրություն
1 android:layout_above

Տեղորոշում է այս view-ի վերևի ծայրը տրված view ID-ի վերևում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի,  “@[+][package:]type:name” տեսակում:

2 android:layout_alignBottom

Ստեղծում է  այս view-ի ներքևի ծայրը, որը համապատասխանում է տրված view ID view-ի  պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

3 android:layout_alignLeft

Ստեղծում է  այս view-ի ձախ ծայրը, որը համապատասխանում է տրված ID view-ի ձախ ծայրը և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

4 android:layout_alignParentBottom

Եթե ճիշտ է, այն ստեղծում է այս view-ի ներքևի ծայրը և համապատասխանում է ներքևի ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

5 android:layout_alignParentEnd

Եթե ճիշտ է, այն ստեղծում է այս view-ի վերջի ծայրը և համապատասխանում է վերջի ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

6 android:layout_alignParentLeft

Եթե ճիշտ է, այն ստեղծում է այս view-ի ձախ ծայրը և համապատասխանում է ձախ ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

7 android:layout_alignParentRight

Եթե ճիշտ է, այն ստեղծում է այս view-ի աջ ծայրը և համապատասխանում է աջ ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

8 android:layout_alignParentStart

Եթե ճիշտ է, այն ստեղծում է այս view-ի սկզբի ծայրը և համապատասխանում է սկզբի ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

9 android:layout_alignParentTop

Եթե ճիշտ է, այն ստեղծում է այս view-ի վերևի ծայրը և համապատասխանում է վերևի ծայրին, որպես ծնող: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

10 android:layout_alignRight

 

Ստեղծում է այս view-ի աջ ծայրը, որը համապատասխանում է տրված ID view-ի աջ ծայրին և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

11 android:layout_alignStart

Ստեղծում է  այս view-ի սկզբի ծայրը, որը համապատասխանում է տրված ID view-ի սկզբի ծայրին և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

12 android:layout_alignTop

Ստեղծում է այս view-ի վերևի ծայրը, որը համապատասխանում է տրված ID view-ի վերևի ծայրին և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

13 android:layout_below

Տեղադրում է այս view-ի վերևի ծայրը, տրված ներքևի ID view-ում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի “@[+][package:]type:name” տեսակում:

14 android:layout_centerHorizontal

Եթե ճիշտ է, կենտրոնացնում է այս երեխային հորիզոնական դիրքով ծնողի հետ: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

15 android:layout_centerInParent

Եթե ճիշտ է, կենտրոնացնում է այս երեխային հորիզոնական և ուղղահայաց դիրքերով ծնողի հետ: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

16 android:layout_centerVertical

Եթե ճիշտ է, կենտրոնացնում է այս երեխային ուղղահայաց դիրքով ծնողի հետ: Պետք է լինի բուլեան արժեք, կամ ճիշտ կամ սխալ:

17 android:layout_toEndOf

Տեղորոշում է այս view-ի սկզբի ծայրը տրված view ID-ի վերջում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի,  “@[+][package:]type:name” տեսակում:

18 android:layout_toLeftOf

Տեղորոշում է այս view-ի աջ ծայրը տրված view ID-ի ձախ կողմում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի,  “@[+][package:]type:name” տեսակում:

19 android:layout_toRightOf

Տեղորոշում է այս view-ի ձախ ծայրը տրված view ID-ի աջ կողմում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի,  “@[+][package:]type:name” տեսակում:

20 android:layout_toStartOf

Տեղորոշում է այս view-ի վերջի ծայրը տրված view ID-ի սկզբում և պետք է  վկայակոչվեն մեկ այլ ռեսուրսի,  “@[+][package:]type:name” տեսակում:

Օրինակ

Այս օրինակը մի քանի քայլերով կցուցադրի ինչպես ստեղծել ձեր իսկ  Android հավելվածը օգտագործելով Հարաբերական Նախագիծ: Հետևեք այս քայլերին փոփոխելու Android հավելվածը, որը ստեղծել ենք Hello World Example գլխում −

Քայլ Նկարագրություն
1 Կօգտագործեք Android Studio IDE ստեղծելու Android հավելված և անվանեք այն demo  com.example.demo փաթեթի ներքո, ինչպես բացատրված է  Hello World Example գլխում:
2 Փոփոխեք դեֆոլտ բովանդակությունը res/layout/activity_main.xml ֆայլի ներառելու մի քանի  ֆայլեր  Հարաբերական նախագծում:
3 Բացատրեք պահանջված բաղադրիչները res/values/strings.xml ֆայլում:
4 Միացրեք հավելվածը մեկնարկելու  Android էմուլյատորը և հաստատեք փոփոխման արդյունքը հավելվածում:

Հետևյալը փոփոխված գլխավոր գործունեության բովանդակությունն է src/com.example.demo/MainActivity.java. Այս ֆայլը կարող է ներառել յուրաքանչյուր հիմնարար lifecycle մեթոդներ:

package com.example.demo;

import android.os.Bundle;
import android.app.Activity;

public class MainActivity extends Activity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
   }
   
}

Հետևյալը կլինի res/layout/activity_main.xml ֆայլի բովանդակությունը −

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:paddingLeft="16dp"
   android:paddingRight="16dp" >
   
   <EditText
      android:id="@+id/name"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:hint="@string/reminder" />
      
   <LinearLayout
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:layout_alignParentStart="true"
      android:layout_below="@+id/name">
      
      <Button
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="New Button"
         android:id="@+id/button" />
      
      <Button
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="New Button"
         android:id="@+id/button2" />
      
   </LinearLayout>

</RelativeLayout>

Հետևյալը կլինի res/values/strings.xml ֆայլի բովանդակությունը բացատրելու երկու բաղադրիչները−

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="action_settings">Settings</string>
   <string name="reminder">Enter your name</string>
</resources>

Եկեք փորձենք մեր փոփոխված Hello World! հավելվածը, որն նոր ստեղծեցինք: Ենթադրում ենք, որ ստեղծել եք ձեր AVD  environment set-up անելիս: Հավելվածը միացնելու համար Android Studio-ից, բացեք ձեր պրոյեկտների գործունեության ֆայլերից և սեղմեք Run կոճակին: Android Studio-ն ներբեռնում է հավելվածը ձեր AVD-ի վրա և սկսեք հավելվածը գործել, և եթե ամեն ինչ նորմալ է ձեր կարգավորումների հետ, հավելվածը կցուցադրի Էմուլյատոր պատուհան, որտեղ մենք կսեղմենք Menu կոճակը, տեսնելու հետևյալ պատուհանը:

relative1

Հարգելի ընթերցող, խնդրում ենք չմոռանալ like տալ մեր ֆեյսբուքյան էջին, քանի որ նորությունների մեծ մասը առաջինը տեղադրվում է հենց այնտեղ։ Ինչպես նաև հետևեք մեզ այլ սոցիալական ցանցերում և, իհարկե, գրանցվեք մեր բլոգում։

Share.