C ấ u trúc d ạ ng cây c ủ a giao di ện ngườ i dùng

Một phần của tài liệu Một số vấn đề về lập trình giao diện trong Android (Trang 36 - 37)

3.2. H ệ th ố ng phân c ấ p các thành ph ầ n

3.2.3.C ấ u trúc d ạ ng cây c ủ a giao di ện ngườ i dùng

Để xây dựng nên giao diện người dùng cho một activity, ta có thể dùng các

node view và viewgroup như biểu đồ bên dưới. Cây có thể đơn giản hay phức tạp, ta cũng có thể dùng tập widget đã được định nghĩa sẵn hoặc các view do ta tự định nghĩa

Hình 3.2 Cấu trúc cây giao diện

[nguồn: android-sdk_m5-rc14_windows/docs/devel/ui/hierarchy.html]

Để vẽ giao diện ra màn hình trong một activity, ta gọi phương thức

setContentView() và truyền cho nó tham chiếu tới đối tượng node gốc. Khi hệ

thống Android đã có tham chiếu tới đối tượng node gốc, nó có thể làm việc trực tiếp với node để bắt đầu thực hiện việc vẽ toàn bộ cây ra màn hình. Khi activity của ta “active” và nhận được focus, hệ thống sẽ thông báo cho activity và yêu cầu node gốc vẽ cây. Node gốc sau đó lại yêu cầu các node con trực tiếp vẽ cây, mỗi viewgroup sẽ chịu trách nhiệm vẽ các node con trực tiếp của chúng.

Như đã đề cập, mỗi viewgroup sẽ đảm trách việc đo lường, trình bày các node con, và gọi hàm Draw() để bắt các node con tự vẽ chúng. Những node con này có thể ‘xin’ một kích thước cũng như vị trí từ ‘bố mẹ’ chúng, nhưng quyết định sau cùng vẫn thuộc về ‘bố mẹ’

Một phần của tài liệu Một số vấn đề về lập trình giao diện trong Android (Trang 36 - 37)