32 khác biệt trong thiết kế ứng dụng iOS và Android
(medium.com)Không chỉ là so sánh đơn thuần, đây còn là bài viết rất hữu ích để hiểu các đặc điểm nổi bật của UI trên từng hệ điều hành
Những khác biệt cơ bản
-
HIG vs. Material Design
-
Đơn vị: pt vs. dp
-
Màn hình: 320pt x 568pt vs. 360dp x 640dp
-
Phông chữ: San Francisco vs. Roboto
-
Thanh điều hướng của Android
-
Shadow và Elevation trong Material Design
-
Cách gọi tên:
→ Tab bar vs. Bottom Navigation Bar
→ Navigation Bar vs. Top App Bar,
→ Segmented Controls vs. Tabs
→ Alerts vs. Dialogs
→ Touch ID vs. Android Fingerprint
-
Cách điều hướng ở cấp cao nhất
-
Sự khác nhau giữa tab bar và bottom navigation bar
-
Các chức năng đặc biệt của tab trên Android
-
Sự khác nhau trong cách hiển thị các trang con
-
Mẫu gọi ngăn điều hướng (Drawer)
-
Sự khác nhau trong hành vi khi cuộn
-
Sự khác nhau trong hành vi tìm kiếm
Khác biệt về thành phần (UI)
- Những thứ không có trên iOS
→ Navigation Drawer, Backdrops, Banner, Snackbar, Chips, Bottom App Bar, FABs(Floating Action Button), Bottom Navigation Drawer, Side Sheet, Expanding Bottom Sheet, Standard Bottom Sheet,
- Những thứ không có trên Android
→ Page Control, Toolbars, Steppers, Popovers
-
Status Bar giống mà khác
-
Refresh Content Control vs. Swipe to refresh
-
Khác biệt về mặt trực quan của các control
-
Sự khác nhau về hình dạng mũi tên quay lại và vị trí header
-
Sự khác nhau của biểu tượng "ba chấm"
-
Pickers: chọn ngày trên iOS là kiểu trống xoay, còn Android là dạng lịch thông thường
-
Sự khác nhau của trường văn bản
→ iOS hiển thị nhãn phía trên trường và sẽ biến mất khi nhập, Android thì di chuyển nhãn lên trên khi nhập
→ Nút Clear nội dung thì tương tự nhau
→ Material Design nhấn mạnh đường gạch dưới bằng màu Primary khi nhập
-
Context Menus vs. Menus
-
Action View/Activity View vs. Modal Bottom Sheet
-
Edit Menus vs. Text Selection Toolbar
-
Kích thước divider: iOS 0.5pt vs. Android 1dp
Những khác biệt khác
-
Kích thước vùng chạm: iOS 44x44pt, Android 48x48dp
-
App Store vs. Google Play
-
Undo/Redo độc đáo của iOS: khi người dùng lắc điện thoại thì chức năng Undo sẽ hoạt động
-
Sự khác nhau của màn hình khởi chạy: Material cho phép logo ứng dụng trên màn hình khởi chạy, nhưng HIG không khuyến nghị dùng màn hình khởi chạy cho mục đích marketing. Chỉ nên dùng như placeholder
-
Các yếu tố bổ sung của Material Design: Data Format, Data Visualization, Empty States, Offline States, v.v.
2 bình luận
Là startup thì nên phát triển app bằng gì? Câu trả lời cơ bản của tôi cho câu hỏi này là
#1 Nếu là dịch vụ không nhất thiết phải có app, thì trước hết chỉ cần làm mobile web thật tốt là được.
#2 Nếu nhất thiết phải có app, thì giai đoạn đầu hãy hỗ trợ đồng thời nền tảng iOS/Android bằng React Native hoặc Flutter.
#3 Khi người dùng tăng lên, số lượng lập trình viên cũng nhiều hơn và có thêm vốn, thì cũng tốt nếu chuyển sang native app được tối ưu cho từng OS. (Swift & Kotlin)
Nhưng mà, câu trả lời này vẫn y hệt 10 năm trước.
Hồi đó chỉ là HTML5, Hybrid(Phonegap), Objective C++ & Java mà thôi..
Bây giờ nếu làm web bằng React thì nhờ React Native nên có lẽ sẽ tiện hơn đôi chút.
Tôi luôn khuyến nghị #1, #2, còn #3 là lựa chọn
Bài viết so sánh UI này là nội dung cần hiểu kỹ khi ở trường hợp #3, và ngay cả khi là #2 thì cũng là bài đáng xem trước.
Tiếp theo bình luận mà xguru đã để lại
Tuy nhiên, nếu đó là dịch vụ phụ thuộc nhiều vào phần cứng như camera, GPS, cảm biến gia tốc, thì hãy chuyển ngay đến mục 3.
(ví dụ: muốn làm một ứng dụng bộ lọc video thời gian thực -> sang #3...)