FrameLayout trong Android
Nếu bạn vẫn sử dụng FrameLayout để thiết kế layout, thì cần lưu ý: Các View con đặt vào FrameLayout nằm chồng nên nhau theo thứ tự cái nào đưa vào sau thì hiện thị ở lớp trước, mỗi View con chỉ có thể điều chỉnh vị trí nó thông qua thuộc tính android:layout_gravity gán cho View con
Và có thể tinh chỉnh khoảng cách theo hướng cách cánh bằng các thuộc tính liên quan đến margin như: android:layout_margin, android:layout_marginTop, android:layout_marginBottom, android:layout_marginLeft, android:layout_marginRight, android:layout_marginStart, android:layout_marginEnd, android:layout_marginHorizontal, android:layout_marginVertical
Thuộc tính android:layout_gravity trong các View con
Khi các View nằm trong FrameLayout thì khi gán thuộc tính android:layout_gravity gán các giá trị ở bảng sau vị trí của nó thay đổi tương ứng:Các giá trị có thể kết hợp bằng ký hiệu
|
giá trị | Vị trí của View con |
---|---|
bottom |
Nằm dưới FrameLayout |
center |
Nằm giữa FrameLayout |
center_horizontal |
Giữa theo chiều ngang |
center_vertical |
Giữa theo chiều đứng |
end |
Cuối FrameLayout |
left |
Bên trái |
right |
Bên phải |
start |
Bắt đầu FrameLayout |
top |
Trên FrameLayout |
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:padding="10dp" android:layout_width="match_parent" android:layout_height="match_parent"> <!--Ảnh kín FrameLayout--> <ImageView android:src="@drawable/butterfly" android:scaleType="centerCrop" android:layout_width="match_parent" android:layout_height="match_parent" /> <!--Button ở giữa, bên phải và cách mép phải FrameLayout 20dp--> <Button android:layout_gravity="center|right" android:layout_marginRight="20dp" android:text="Button" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <!--Ảnh ở giữa, bên dưới FrameLayout--> <ImageView android:layout_gravity="center|bottom" android:src="@drawable/xuanthulab" android:adjustViewBounds="true" android:layout_width="150dp" android:layout_height="wrap_content" /> <!--Dòng chữ ở giữa, phần trên FrameLayout--> <TextView android:layout_gravity="center|top" android:layout_marginTop="10dp" android:text="Đây là một TextView" android:layout_width="100dp" android:gravity="center" android:layout_height="wrap_content" /> </FrameLayout>
Bạn thấy với FrameLayout các View con nằm chồng nên nhau (Button nằm trên Ảnh ...) theo từng lớp và vị trí của chúng xác định bởi layout_grayvity
Không có nhận xét nào :
Đăng nhận xét