Tổng Quan :
Học lập trình Android : Khối xây dựng cơ bản cho giao diện người dùng là một đối tượng View được tạo từ lớp View và chiếm một khu vực hình chữ nhật trên màn hình và chịu trách nhiệm cho việc vẽ và xử lý sự kiện. Xem là lớp cơ sở cho các tiện ích, được sử dụng để tạo các thành phần giao diện người dùng tương tác như nút, trường văn bản, v.v.Các ViewGroup là một lớp con của Xem và cung cấp thùng chứa vô hình mà giữ Lần khác hoặc ViewGroups khác và xác định tính cách bố trí của họ.
Ở cấp độ thứ ba, chúng tôi có các bố cục khác nhau là lớp con của lớp ViewGroup và bố cục điển hình xác định cấu trúc hình ảnh cho giao diện người dùng Android và có thể được tạo trong thời gian chạy bằng cách sử dụng các đối tượng View / ViewGroup hoặc bạn có thể khai báo bố cục của mình bằng cách sử dụng tệp XML main_layout đơn giản .xml nằm trong thư mục res / layout của dự án của bạn
![]() |
| ảnh minh họa |
THÔNG SỐ BỐ CỤC
Hướng dẫn này là nhiều hơn về việc tạo GUI của bạn dựa trên các bố cục được xác định trong tệp XML. Bố cục có thể chứa bất kỳ loại tiện ích con nào như nút, nhãn, hộp văn bản, v.v. Sau đây là một ví dụ đơn giản về tệp XML có LinearLayout -<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a TextView" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="This is a Button" /> <!-- More GUI components go here --> </LinearLayout>Khi bố cục của bạn đã được tạo, bạn có thể tải tài nguyên bố cục từ mã ứng dụng của mình, trong hoạt động gọi lại Activity.onCreate () như được hiển thị bên dưới
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }
Các loại bố cục Android
Có nhiều bố cục được cung cấp bởi Android mà bạn sẽ sử dụng trong hầu hết các ứng dụng Android để cung cấp chế độ xem, giao diện khác nhau.| Sr.No | Bố cục & mô tả |
|---|---|
| 1 | Bố cục tuyến tính LinearLayout là một nhóm xem sắp xếp tất cả các trẻ em theo một hướng duy nhất, theo chiều dọc hoặc chiều ngang. |
| 2 | Giao diện tương đối RelativeLayout là một nhóm xem hiển thị các khung nhìn con ở các vị trí tương đối. |
| 3 | Bố cục bảng TableLayout là một khung nhìn nhóm các khung nhìn thành các hàng và các cột. |
| 4 | Bố cục tuyệt đối AbsoluteLayout cho phép bạn chỉ định vị trí chính xác của con của nó. |
| 5 | Bố cục khung FrameLayout là một trình giữ chỗ trên màn hình mà bạn có thể sử dụng để hiển thị một khung nhìn duy nhất. |
| 6 | Chế độ xem danh sách ListView là một nhóm xem hiển thị danh sách các mục có thể cuộn. |
| 7 | Chế độ hiển thị theo ô GridView là một ViewGroup hiển thị các mục trong một mạng lưới có thể cuộn hai chiều. |
Thuộc tính bố cục
Mỗi bố cục có một tập hợp các thuộc tính xác định các thuộc tính trực quan của bố cục đó. Có rất ít thuộc tính phổ biến trong tất cả các bố cục và chúng là các thuộc tính khác dành riêng cho bố cục đó. Sau đây là các thuộc tính phổ biến và sẽ được áp dụng cho tất cả các bố cục:| Sr.No | Thuộc tính & Mô tả |
|---|---|
| 1 | android: id Đây là ID xác định duy nhất chế độ xem. |
| 2 | android: layout_width Đây là chiều rộng của bố cục. |
| 3 | android: layout_height Đây là chiều cao của bố cục |
| 4 | android: layout_marginTop Đây là khoảng trống thừa ở phía trên cùng của bố cục. |
| 5 | android: layout_marginBottom Đây là khoảng trống thừa ở phía dưới cùng của bố cục. |
| 6 | android: layout_marginLeft Đây là khoảng trống thừa ở phía bên trái của bố cục. |
| 7 | android: layout_marginRight Đây là khoảng trống thừa ở phía bên phải của bố cục. |
| số 8 | android: layout_gravity Điều này chỉ định cách các Chế độ xem con được định vị. |
| 9 | android: layout_weight Điều này xác định bao nhiêu không gian bổ sung trong bố cục sẽ được phân bổ cho Chế độ xem. |
| 10 | android: layout_x Điều này xác định tọa độ x của bố cục. |
| 11 | android: layout_y Điều này xác định tọa độ y của bố cục. |
| 12 | android: layout_width Đây là chiều rộng của bố cục. |
| 13 | android: layout_width Đây là chiều rộng của bố cục. |
| 14 | android: paddingLeft Đây là phần đệm bên trái được điền cho bố cục. |
| 15 | android: paddingRight Đây là phần đệm phù hợp cho bố cục. |
| 16 | android: paddingTop Đây là phần đệm trên cùng cho bố cục. |
| 17 | android: paddingBottom Đây là phần đệm phía dưới được điền cho bố cục. |
Bạn có thể chỉ định chiều rộng và chiều cao với các phép đo chính xác nhưng thường xuyên hơn, bạn sẽ sử dụng một trong các hằng số này để đặt chiều rộng hoặc chiều cao -
android: layout_width = wrap_content cho chế độ xem của bạn biết kích thước của chính nó theo kích thước được yêu cầu bởi nội dung của nó.
android: layout_width = fill_parent cho biết chế độ xem của bạn trở nên lớn bằng chế độ xem gốc.
Thuộc tính Gravity đóng vai trò quan trọng trong việc định vị đối tượng khung nhìn và nó có thể mất một hoặc nhiều (cách nhau bằng '|') của các giá trị hằng số sau.
| Không thay đổi | Giá trị | Sự miêu tả |
|---|---|---|
| hàng đầu | 0x30 | Đẩy đối tượng lên đầu thùng chứa của nó, không thay đổi kích thước của nó. |
| đáy | 0x50 | Đẩy đối tượng vào cuối vùng chứa của nó, không thay đổi kích thước của nó. |
| trái | 0x03 | Đẩy đối tượng sang bên trái của vùng chứa, không thay đổi kích thước của đối tượng. |
| đúng | 0x05 | Đẩy đối tượng sang bên phải của vùng chứa, không thay đổi kích thước của đối tượng. |
| center_vertical | 0x10 | Đặt đối tượng vào trung tâm dọc của vùng chứa, không thay đổi kích thước của đối tượng. |
| fill_vertical | 0x70 | Phát triển kích thước dọc của đối tượng nếu cần thiết để nó hoàn toàn lấp đầy vùng chứa của nó. |
| center_horizontal | 0x01 | Đặt đối tượng ở trung tâm ngang của vùng chứa, không thay đổi kích thước của nó. |
| fill_horizontal | 0x07 | Phát triển kích thước ngang của đối tượng nếu cần thiết để nó hoàn toàn lấp đầy container của nó. |
| trung tâm | 0x11 | Đặt đối tượng ở giữa hộp chứa của nó ở cả trục thẳng đứng và trục ngang, không thay đổi kích thước của vật thể. |
| lấp đầy | 0x77 | Phát triển kích thước ngang và dọc của đối tượng nếu cần để nó lấp đầy hoàn toàn vùng chứa của nó. |
| clip_vertical | 0x80 | Tùy chọn bổ sung có thể được thiết lập để có các cạnh trên và / hoặc dưới cùng của trẻ được cắt bớt các giới hạn của vùng chứa. Đoạn clip sẽ dựa trên trọng lực thẳng đứng: trọng lực hàng đầu sẽ cắt cạnh dưới, trọng lực dưới sẽ cắt cạnh trên và không được kẹp cả hai cạnh. |
| clip_horizontal | 0x08 | Tùy chọn bổ sung có thể được thiết lập để có các cạnh bên trái và / hoặc bên phải của trẻ được cắt bớt các giới hạn của vùng chứa. Clip sẽ dựa trên trọng lực ngang: trọng lực bên trái sẽ cắt cạnh phải, trọng lực phải sẽ cắt cạnh trái và cả hai sẽ không cắt cả hai cạnh. |
| khởi đầu | 0x00800003 | Đẩy đối tượng vào đầu vùng chứa của nó, không thay đổi kích thước của nó. |
| kết thúc | 0x00800005 | Đẩy đối tượng vào cuối thùng chứa của nó, không thay đổi kích thước của nó. |
Xem nhận dạng
Một đối tượng khung nhìn có thể có một ID duy nhất được gán cho nó, nó sẽ xác định khung nhìn duy nhất trong cây. Cú pháp cho một ID, bên trong một thẻ XML làandroid:id="@+id/my_button"
Sau đây là mô tả ngắn gọn về các dấu @ và + -
Biểu tượng tại (@) ở đầu chuỗi cho biết trình phân tích cú pháp XML sẽ phân tích cú pháp và mở rộng phần còn lại của chuỗi ID và xác định nó như một tài nguyên ID.Dấu cộng (+) có nghĩa rằng đây là tên tài nguyên mới phải được tạo và thêm vào tài nguyên của chúng tôi. Để tạo một thể hiện của đối tượng khung nhìn và chụp nó từ bố cục, hãy sử dụng như sau:
Button myButton = (Button) findViewById(R.id.my_button);

Không có nhận xét nào:
Đăng nhận xét