Monday, March 15, 2021

Tìm hiểu RelativeLayout Android

Trong android, RelativeLayout trong Android là một ViewGroup được sử dụng để chỉ định vị trí của các thể hiện View con tương đối với nhau (Con A ở bên trái Con B) hoặc liên quan đến cha mẹ (Căn chỉnh với đầu cha mẹ).

Sau đây là biểu diễn bằng hình ảnh của bố cục tương đối trong các ứng dụng Android.

Trong android, RelativeLayout rất hữu ích để thiết kế giao diện người dùng vì bằng cách sử dụng bố cục tương đối, chúng ta có thể loại bỏ các nhóm chế độ xem lồng nhau và giữ cho hệ thống phân cấp bố cục của chúng ta phẳng, giúp cải thiện hiệu suất của ứng dụng.

Tìm hiểu RelativeLayout Android

Chế độ xem Định vị Android trong Bố cục Tương đối

Như chúng ta đã thảo luận, trong RelativeLayout, chúng ta cần chỉ định vị trí của các khung nhìn con so với nhau hoặc liên quan đến cha mẹ. Trong trường hợp nếu chúng tôi không chỉ định vị trí của các chế độ xem con, thì theo mặc định, tất cả các chế độ xem con được đặt ở trên cùng bên trái của bố cục.

Sau đây là một số thuộc tính bố cục hữu ích nhất có sẵn cho các dạng xem trong RelativeLayout.

Android RelativeLayout Example

Sau đây là ví dụ về việc tạo RelativeLayout với các điều khiển khác nhau trong ứng dụng Android.

Tạo một ứng dụng android mới bằng cách sử dụng studio android và đặt tên là RelativeLayout. Trong trường hợp nếu bạn không biết cách tạo ứng dụng trong android studio, hãy xem bài viết này Ứng dụng Android Hello World.

Bây giờ, hãy mở tệp activity_main.xml từ đường dẫn \ res \ layout và viết mã như hình dưới đây

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingLeft="10dp"

    android:paddingRight="10dp">

    <Button

        android:id="@+id/btn1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:text="Button1" />

    <Button

        android:id="@+id/btn2"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentRight="true"

        android:layout_centerVertical="true"

        android:text="Button2" />

    <Button

        android:id="@+id/btn3"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_centerVertical="true"

        android:text="Button3" />


    <Button

        android:id="@+id/btn4"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:text="Button4" />

    <Button

        android:id="@+id/btn5"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignBottom="@+id/btn2"

        android:layout_centerHorizontal="true"

        android:text="Button5" />

    <Button

        android:id="@+id/btn6"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_above="@+id/btn4"

        android:layout_centerHorizontal="true"

        android:text="Button6" />

    <Button

        android:id="@+id/btn7"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_toEndOf="@+id/btn1"

        android:layout_toRightOf="@+id/btn1"

        android:layout_alignParentRight="true"

        android:text="Button7" />

</RelativeLayout>

Sau khi hoàn tất việc tạo bố cục, chúng tôi cần tải tài nguyên bố cục XML từ phương thức gọi lại hoạt động onCreate () của chúng tôi, cho tệp hoạt động chính đang mở MainActivity.java từ đường dẫn \ java \ com.tutlane.relativelayout và viết mã như như hình bên dưới.

MainActivity.java

public class MainActivity extends AppCompatActivity {

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

    }

}

Nguồn : Lập trình android 

1 comment: