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?
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ùng và mậ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.
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.
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)