2011-11-11 43 views
6

Chỉ cần bắt đầu phát triển Android. Để bắt đầu, tôi đang xây dựng một ứng dụng sẽ hoạt động giống như trình xem ảnh + thư viện, với chức năng được thêm vào nhanh chóng và nhanh chóng di chuyển hình ảnh vào các thư mục con, để dễ dàng sắp xếp nhiều ảnh.Thực tiễn tốt nhất cho Android - lượt xem/hoạt động

Cho đến giờ tôi có 2 hoạt động - chế độ xem hình ảnh toàn màn hình và lưới hình thu nhỏ toàn màn hình (cho các mục đích đa lựa chọn).

Bây giờ là tôi mới ở đây, tôi đã tự hỏi nếu hoạt động kép này là một quyết định khôn ngoan. Sẽ tốt hơn nếu chỉ chuyển đổi giữa các chế độ xem nội dung để tăng cường hoạt động hoàn toàn khác khi chuyển từ chế độ xem hình ảnh sang chế độ xem lưới (và ngược lại).

Điều tôi đang tìm kiếm dĩ nhiên là những ưu điểm và nhược điểm rõ ràng - hiệu suất, dễ dàng và khả năng sử dụng. Nhưng cũng nếu có nhiều "mẫu" cơ bản hơn/lý do thực hành tốt nhất cho cái này hay cái kia.

Cảm ơn

Trả lời

5

Tôi nghĩ cách tiếp cận hoạt động kép của bạn là hợp lý. Nói chung, API Hoạt động/Chế độ xem Android được cấu trúc xung quanh có một Chế độ xem cố định cho mỗi Hoạt động. Mặc dù bạn có thể điều chỉnh Chế độ xem trong bố cục Hoạt động của mình, tôi khuyên bạn nên hạn chế việc ẩn/hiển thị/di chuyển Chế độ xem thay vì thay thế bố cục bán buôn.

Điều bạn có thể nên xem xét là mới hơn Fragments API. Điều này gần như có thể được coi là "hoạt động trong các hoạt động". Một Fragment về cơ bản cho phép bạn bao bọc một phần tử của giao diện người dùng (bố cục và hành vi) trong một thành phần có thể tái sử dụng. Vì vậy, trong ví dụ cụ thể của bạn, hai giao diện người dùng riêng biệt có thể là Phân đoạn trong một hoạt động.

Điều này có một số lợi ích như có thể sử dụng lại UI của bạn trong các hoạt động khác và bạn có thể thực hiện các hoạt ảnh chuyển tiếp sôi nổi.

+0

+1 cho API phân đoạn, tôi có chưa sử dụng nhưng nó trông rất đẹp. Cảm ơn. Chỉ có sẵn từ API cấp 11 mặc dù (Android 3.0), điều đó có nghĩa là nó không phải là đi cho tôi. Quá xấu: ( – Guillaume

+0

Tôi bị hấp dẫn bởi mảnh vỡ. Chính xác một trong những điều tôi muốn làm là chuyển động giữa chế độ xem hình ảnh và chế độ xem lưới - vì tôi hiểu rằng tôi có thể thực hiện được với các phân đoạn. một hoạt động dĩ nhiên sẽ cho phép điều này, và cũng sẽ cho phép tôi sử dụng lại một số yếu tố phổ biến như menu, văn bản phổ biến nhất định vv. Tuy nhiên, tôi thích đơn giản hóa mã của việc đặt chúng trong các hoạt động riêng biệt. – Dynde

+1

Trên thực tế, sự đơn giản hóa (hoặc đóng gói) mà bạn đang nói về cơ bản chỉ là rõ ràng với một Fragment. Hoạt động của bạn đơn giản trở thành một thùng chứa cho các mảnh của bạn. – tomtheguvnor

1

hoạt động kép sẽ hoạt động, vì bạn sẽ không bị làm phiền khi thực hiện tác vụ nút quay lại.

+0

Có - giữ gìn hành vi của các nút quay lại là quan trọng. – tomtheguvnor

+0

Cảm ơn - vâng, tôi đã không thực sự nghĩ về nút quay lại. Nhưng xem như là lựa chọn của tôi là "làm giàu ngữ nghĩa" hơn thông qua nút "Đi tới Lưới" thực tế, điều này có nghĩa là thực hiện nhiều hơn, nhưng sẽ hữu ích hơn, ưu và khuyết điểm :) – Dynde

1

Các hoạt động được thực hiện chính xác cho mục đích này. Nếu bạn thích, bạn có thể có toàn bộ ứng dụng của mình trong một hoạt động với công cụ bố cục tùy chỉnh (tải lại thành phần, v.v.) và đó là những gì bạn muốn làm nếu bạn muốn ứng dụng "di động" (ví dụ: bạn phát triển một ứng dụng chung Giao diện người dùng cho các nền tảng khác nhau, Andropid, Windows 7, iOS, v.v.), nhưng nếu bạn chỉ muốn sử dụng Android, cách ưu tiên là sử dụng các API được cung cấp và không phải để phát minh lại bánh xe. Nó hoạt động tốt, và sẽ cung cấp cho người dùng một cảm giác thoải mái nhất quán trong kinh nghiệm của họ (nó sẽ trông giống như các ứng dụng Android khác).

Các dự án hiện tại tôi đang làm việc trên (một trò chơi) đã có 10 hoạt động khác nhau, và tôi đang lập kế hoạch thêm ...

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