Cơ bản sử dụng Fragment trong Android

Cơ bản sử dụng Fragment trong Andoird

Fragment trong android được định nghĩa là một phân đoạn nội dung hiển thị trong Activity. Theo quy định của Android trong cùng 1 lúc chỉ hiển thị duy nhất một Activity trên màn hình, do đó để hiển thị nhiều giao diện phức tạp với nhiều thành phần nội dung khác nhau thì rất khó với Activity. Do đó một khái niệm phân mảnh một bố cục nôi dung giao diện thành nhiều mảnh( Fragments) khác nhau được sử dụng trong Andoird. Ta có thể hiểu rằng khi sử dụng Fragments trong xây dựng UI cho 1 activity thì Activity đóng vai trò là một bộ khung giàn giáo cho giao diện, còn các Fragments đóng vai trò là các module có thể gắn ghép lên Activity đó, từ đó các bố cục sắp xếp các thành phần nội dung trên một Activity sẽ dễ dàng và hợp lý hơn trong việc thiết kế và tổ chức mã nguồn source code chương trình.

Fragment trong Android
Fragment trong Android

Như trong hình trên, chúng ta có 1 Main Activity với 2 phần bố cục nội dung bên trái chứa một list các nội dung, bên phải là phần mô tả cho từng item trong list nội dung đó, mỗi khi người dùng bấm vào các item trong list bên trái thì nội dung mô tả bên phải sẽ thay đổi theo tương tác của người dùng. Hai phần bố cục này được lắp đầy bằng 2 Fragment là ListFragmentDetails Fragment.

Nguyên lý thiết kế và hoạt động Fragement

Nguyên lý thiết kế Fragment: Android giới thiệu Fragment trong kể từ phiên Android 3.0( Api 11) với mục đích tạo ra các giao diện người dùng hỗ trợ tốt cho thế hệ máy tính bảng tablet và phablet với màn hình rộng nhằm đem lại trải nghiệm UI tốt cho người dùng. Bởi vì thế hệ máy tính bảng Tablet và phablet có diện tích màn hình hiển thị lớn hơn nhiều so với điện thoại cần tay nên chúng ta có thể dễ dàng thêm các phân đoạn nội dung cần thiết để đưa nhiều thông tin hơn trên mobile. Một ưu điểm lớn nhất của Fragment là tính đóng gói thành các module giao diện với logic và bussiness được cô lập thành các gói riêng rẻ không tác động lẫn nhau, do đó chúng ta sẽ có thể tái sử dụng được trong nhiều activity khác nhau mà không phải thiết kế lại cho từng màn hình Activity.

Lợi ích của Fragment
Lợi ích của Fragment

Vòng đời hoạt động của Fragment: Tất cả các Fragments đểu bắt buộc phải nhúng trong Activity, vòng đời hoạt động của một Fragment chịu ảnh hưởng bởi Activity mà nó nhúng. Khi một Activity bị buộc tạm dừng tất cả các phân đoạn Fragments trong nó cũng sẽ bị tạm dừng theo, khi một Activity bị hủy các Fragments củng bị hủy. Tuy nhiên khi Activity đang chạy, mỗi phân đoạn trong Activity đó có vòng đời hoạt động khác nhau không phụ thuộc vào các Fragments khác trên cùng 1 Activity, bạn có thể dễ dàng khởi tạo tạm dừng một Fragment mà không làm ảnh hưởng tới Fragment còn lại.

 

 

Kevin Dang

Hey there! My name is Kevin Dang, I am website, software, mobile app develop, web admin system. Expert living in Hồ Chí Minh (Việt Nam). I am very interested in digital marketing with: SEO, Facebook, Google Ads ... This blog is where I will share the experiences, techniques and knowledge I have learned.