Tìm hiểu AbsoluteLayout trong Android

Khi nói về UI Layout không thể không nói đến AbsoluteLayout. Vậy AbsoluteLayout trong Android là gì? Có mấy cách khai báo AbsoluteLayout? Sử dụng AbsoluteLayout như thế nào?

Tìm hiểu về AbsoluteLayout trong Android

Bây giờ tôi cùng các bạn sẽ cùng nhau tìm hiểu về AbsoluteLayout trong Android.

1. AbsoluteLayout trong Android là gì?

AbsoluteLayout trong Android cho phép bạn chỉ định vị trí của các view con bên trong nó thông qua tọa độ x/y. Tuy nhiên AbsoluteLayout không linh hoạt và khó hỗ trợ nhiều loại kích thước màn hình. Bởi vị trí các view con được xác định là tuyệt đối.

2. Cú pháp khái báo AbsoluteLayout trong Android

Trong Android LayoutAbsolute được khai báo như sau.

<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:ignore="Deprecated">
//TODO
</AbsoluteLayout>

3. Các thuộc tính của AbsoluteLayout trong Android

Một số thuộc tính quan trọng của AbsoluteLayout tôi đã liệt kê ở dưới.

Thuộc tính Mô tả
android:id ID là duy nhất để nhận diện Layout
android:layout_x Xác định tọa độ x của view.
android:layout_y Xác định tọa độ y của view.

4. Ví dụ sử dụng AbsoluteLayout trong Android

Để hiểu rõ hơn về AbsoluteLayout trong Android mới các bạn cùng tôi đến với ví dụ sử dụng Layout Absolute. Trong ví dụ này tôi thiết kế màn hình đăng nhập với tên người dùngmật khẩu kèm theo một nút để đăng nhập. Và đây là source code ví dụ sử dụng AbsoluteLayout trong Android các bạn có thể tải về để xem cho tiện.

Sau đây là 5 bước chuẩn để thực hiện quá trình tạo Project Login sử dụng Layout Absolute.

Bước 1: Tạo project với tên AbsoluteLayoutExample.

Chọn File >> New >> New Project. Xuất hiện form và đặt tên project AbsoluteLayoutExample sau đó click Finish.

Cấu trúc project AbsoluteLayoutExample như sau.

Tìm hiểu về AbsoluteLayout trong Android

Bước 2: Vào res >> layout >> absolute_layout_activity.xml và thêm vào đoạn code dưới đây. Ở đây tôi thiết kế một form đăng nhập bên trong Layout Absolute.

<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:ignore="Deprecated">
    <EditText
        android:layout_x="0px"
        android:layout_y="50px"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/edt_email"
        />
    <EditText
        android:layout_x="0px"
        android:layout_y="150px"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:hint="@string/edt_password"
        />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/btn_login"
        android:layout_x="300px"
        android:layout_y="300px"/>
</AbsoluteLayout>

Bước 3: Mở file AbsoluteLayoutActivity.java và thêm đoạn code sau đây vào.

package com.teamvietdev.absolutelayoutexample;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class AbsoluteLayoutActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.absolute_layout_activity);
    }
}

Bước 4: Mở file AndroidManifest.xml và dán đoạn code sau đây vào.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.teamvietdev.absolutelayoutexample">
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".AbsoluteLayoutActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Bước 5: Sau cùng vào res >> values >> strings.xml và dán đoạn code sau đây vào.

<resources>
    <string name="app_name">Absolute Layout Example</string>
    <string name="edt_email">Email</string>
    <string name="edt_password">Password</string>
    <string name="btn_login">Login</string>
</resources>

Kết quả chạy ứng dụng bạn sẽ thấy biểu mẫu đăng nhập được thiết kế trong Layout Absoulte có chỉ định toạ độ x và y như sau.

Tìm hiểu về AbsoluteLayout trong Android

Lời kết: Sau khi đã tìm hiểu về AbsoluteLayout trong Android các bạn cần nắm khái niệm UI Layout trong Android, UI Layout là gì?. Ngoài ra các bạn có thể xem thêm các nội dung khác trong chuyên mục lập trình Android được chia sẻ với Team Việt Dev.

Xem thêm các layout khác tại đây.

Sử dụng Linear Layout trong Android

Sử dụng Relative Layout trong Android

Sử dụng Table Layout trong Android

Đang cập nhật…

(Tác giả: Team Việt Dev)

Bình luận