android-Planning for Multiple Touchscreen Sizes,Providing Descendant and Lateral Navigation
> Planning for Multiple Touchscreen Sizes
The exhaustive screen map from the previous lesson isn't tied to a particular device form factor, although it can generally look and work okay on a handset or similar-size device.
But Android applications need to adapt to a number of different types of devices, from 3" handsets to 10" tablets to 42" TVs.
Note: Designing applications for television sets also requires attention to other factors, including interaction methods (i.e., the lack of a touch screen), legibility of text at large reading distances, and more.
3 to 4-inch screens are generally only suitable for showing a single vertical pane of content at a time, be it a list of items, or detail information about an item, etc. Thus
on such devices, screens generally map one-to-one with levels in the information hierarchy (categories → object
list → object detail).
Users are especially accustomed to multiple panes on larger screens from years and years of desktop application and desktop web site use. Many desktop applications and websites
offer a left-hand navigation pane or use a master/detail two-pane layout.
Implementation Note: After deciding on the screen size at which to draw the line between single-pane and multi-pane layouts, you can provide different layouts containing one or multiple panes for devices in varying screen size buckets (such
as large
/xlarge
) or varying minimum screen widths (such as sw600dp
).
Implementation Note: While a single screen is implemented as an Activity
subclass,
individual content panes can be implemented as Fragment
subclasses. This maximizes code
re-use across different form factors and across screens that share content.
> Providing Descendant and Lateral Navigation
One way of providing access to the full range of an application's screens is to expose hierarchical navigation.
There are two types of sibling screens: collection-related and section-related screens. Collection-related screens represent individual items in the collection represented by the parent. Section-related screens represent different sections of information about the parent.
There are some obvious immediate benefits of tabs over simpler list- and button-based navigation:
- Since there is a single, initially-selected tab, users have immediate access to that tab's content from the parent screen.
- Users can navigate quickly between related screens, without needing to first revisit the parent.
Note: when switching tabs, it is important to maintain this tab-switching immediacy; do not block access to tab indicators by showing modal dialogs while loading content.
For collection-related screens, horizontal paging is most intuitive when there is a natural ordered relationship between screens, for example if each page represents consecutive
calendar days. For infinite collections (again, calendar days), especially those with content in both directions, this paging mechanism can work quite well.
相關文章
- Multiple Block Sizes (53)BloC
- android-Providing Up Navigation,Providing Proper Back NavigationAndroidNavigation
- 【Oracle-記憶體管理】-Multiple Block SizesOracle記憶體BloC
- android-Implementing Descendant Navigation,Notifying the UserAndroidNavigation
- android-Creating Multiple APKs for Different Screen Sizes,Creating Multiple APKs for Different GL TeAndroidAPK
- ORACLE 記憶體管理 之六 SGA Multiple Block Sizes,Large PoolOracle記憶體BloC
- android-Providing Ancestral and Temporal Navigation,Putting it All Together: Wireframing the ExampleAndroidNavigation
- lateral viewView
- XPath學習:軸(3)——descendant
- Hive-lateral view explodeHiveView
- ASM Setting Larger AU SizesASM
- Specifying Database Block Sizes (91)DatabaseBloC
- hive中的 lateral view(側檢視)HiveView
- Multiple Regression
- ABAP webdynpro的view navigation和WebUI的view navigationWebViewNavigationUI
- JavaScript select multipleJavaScript
- Small Multiple(最短路)
- DataGridView with multiple tableView
- Multiple Buffer Pools (83)
- android auto-Providing Audio Playback for AutoAndroid
- Jetpack 之 Navigation 初探JetpackNavigation
- Changing between 32-bit and 64-bit Word Sizes
- 2.3.6.2 Synchronization of Multiple ApplicationsAPP
- Multiple Books多賬薄
- Multiple Render Targets in OpenGL with Cg
- MySql multiple servers on linuxMySqlServerLinux
- ssis multiple table to one file
- maven Multiple sourceDirectory外掛Maven
- Using Multiple Tablespaces (46)
- LLM multiple modal applicationsAPP
- You need to use a Theme.AppCompat theme (or descendant) with this activity.APP
- android-Maintaining Multiple APKs,Creating Multiple APKs for Different API LevelsAndroidAIAPKAPI
- HarmonyOS:Navigation元件的使用Navigation元件
- 鴻蒙Navigation入門使用鴻蒙Navigation
- hive 的函式 lateral view 用法詳解 | 附pdf下載Hive函式View
- [2016026]12c lateral語法.txt
- Logstash Multiple Pipelines
- kubernetes traefik multiple namespacesnamespace