2014-10-06 18 views
10

Tất cả những lý do tôi có thể tìm thấy cho việc sử dụng mảnh vỡ vào các hoạt động Android có để làm với có khả năng hiển thị nhiều lớp/xem trong cùng một màn hình, đóng gói nhiều thành phần logic vvCó bất kỳ điểm nào của Hoạt động với một đoạn không?

Xét tất cả điều này, có vẻ như, các mảnh chỉ thực sự hữu ích khi bạn sử dụng nhiều trong số chúng.

Vậy sao? Có bao giờ một điểm chỉ sử dụng một mảnh trong một hoạt động?

Tôi hỏi bây giờ vì tôi thấy một tùy chọn trên Android Studio để thực hiện điều đó và tôi tự hỏi điều đó là gì.

Android Studio New Activity with Fragment

+0

Không có ý nghĩa đối sánh, bạn nói đúng. Tuy nhiên, bạn có thể tái sử dụng mảnh vỡ đó trong các hoạt động khác – GVillani82

Trả lời

4

Out of ý kiến ​​cá nhân của tôi, tôi sẽ nói .

Đối với những lý do sau:

  • Giả sử bạn đã quen thuộc với mảnh vỡ, tạo ra một Fragment là hầu như không có việc làm thêm cộng có những lợi ích sau
  • Những mảnh vỡ có thể dễ dàng được tái sử dụng ở một nơi khác (có thể khác Hoạt động đó có nhiều mảnh hơn nữa, hơn nữa, các mảnh vỡ không nhất thiết cần phải sử dụng hết toàn bộ màn hình).
  • Quá trình chuyển đổi hoạt động tốn kém hơn, chuyển tiếp phân đoạn phức tạp hơn.
  • Khung hoạt ảnh Fragment là tốt hơn (về khả năng sử dụng và hiệu suất).
  • Tôi luôn muốn giữ số Hoạt động ở mức tối thiểu giúp giữ cho AndroidManifest.xml ngắn gọn và rõ ràng.
  • Giao diện người dùng được tách thành các Phân đoạn dẫn đến cấu trúc mã sạch hơn và bảo trì mã dễ dàng hơn.

Theo nguyên tắc mã hóa của google, cách tốt nhất là tạo ít hoạt động nhất có thể và tạo nhiều Phân đoạn thay vì được chuyển bên trong Hoạt động.

+1

hai điểm cuối cùng của bạn có vẻ khá yếu - đầu tiên là hoàn toàn là sở thích cá nhân. Về thứ hai - bạn có thể giải thích cách thêm một lớp bổ sung làm cho mã sạch hơn, được cấu trúc tốt hơn hoặc dễ bảo trì hơn. Về nhận xét cuối cùng của bạn - vâng, không nên tạo thêm các hoạt động, nhưng chúng tôi đang thảo luận về một hoạt động chỉ với một phân đoạn để lập luận này không áp dụng. – Okas

+0

@ Vâng, có nhiều hoạt động hơn làm lộn xộn AndroidManifest, bạn không cần khai báo Fragments. – EpicPandaForce

+1

@ Zhuiden, bạn thực sự phải có rất nhiều hoạt động trước khi chúng bắt đầu lộn xộn AndroidManifest. :) – Okas

0

Ưu điểm:

-> tái sử dụng đoạn mã

  • dễ dàng để sử dụng lại nó trong bất kỳ mô-đun
  • dễ dàng để gỡ lỗi

-> xử lý định hướng thay đổi tốt hơn so với hoạt động sử dụng setRetainInstance (đúng)

-> giúp đỡ rất nhiều khi quy mô ứng dụng trong tương lai để bố trí multipane hoặc hỗ trợ đa màn hình

Nhược điểm:

-> ít overhead và tốn thời gian nếu bạn không quen thuộc với những mảnh

+0

May mắn thay, các mảnh không ** phức tạp như vậy, về cơ bản nó chỉ là những gì bạn có trong 'onCreate()' sẽ nằm trong 'onCreateView()' với hai dòng phụ. – EpicPandaForce

+0

@Zhuinden: vâng, nó rất đơn giản. Chỉ cần chúng tôi cần xử lý phân mảnh và backstack đúng cách. –

1

Nó phụ thuộc, nếu bạn định dùng mảnh đó trong một hoạt động khác, bạn có một "điểm" và có thể trong tương lai bạn có thể tái sử dụng nó trên một hoạt động khác, nhưng trong trường hợp ví dụ về màn hình giật gân, nó không không có điểm. Tất cả đều phụ thuộc vào việc sử dụng bạn muốn cung cấp cho ứng dụng của bạn.

Các vấn đề liên quan