原
大多数应用程序都有一个固有的信息模型,可以表示为对象类型的树或图形。更明显的是,您可以绘制不同类型信息的图表,这些信息代表用户在您的应用中与之交互的内容类型。软件工程师和数据架构师经常使用实体关系图(ERD)来描述应用程序的信息模型
您可以使用新的导航编辑器工具构建和可视化应用程序的导航图。为此,您必须使用Navigation Architecture Component API实现导航。API和编辑器工具目前都处于alpha状态。要了解更多信息,请参阅 导航架构组件。
让我们考虑一个示例应用程序,它允许用户浏览一组分类的新闻报道和照片。这种应用程序的一种可能模型如下所示以ERD的形式显示。
图1.示例新闻应用程序的实体关系图。
创建一个屏幕列表
定义信息模型后,您可以开始定义必要的上下文,以使用户能够有效地发现,查看和处理应用程序中的数据。实际上,实现此目的的一种方法是确定允许用户导航到数据并与数据交互所需的详尽屏幕集。我们实际曝光的一组屏幕通常应根据目标设备而有所不同; 在设计过程的早期考虑这一点很重要,以确保应用程序能够适应其环境。
在我们的示例应用程序中,我们希望用户能够查看,保存和共享 分类的 故事和照片。以下是涵盖这些用例的详尽屏幕列表。
用于访问故事和照片的主页或“启动板”屏幕
类别列表
给定类别的新闻故事列表
故事详情视图(我们可以保存和分享)
照片列表,未分类
照片详细视图(我们可以保存并分享)
所有已保存项目的列表
已保存的照片列表
已保存的故事列表
图屏幕关系
现在我们可以定义屏幕之间的定向关系; 从一个屏幕A到另一个屏幕B的箭头意味着屏幕B应该可以通过屏幕A中的一些用户交互直接到达。一旦我们定义了一组屏幕以及它们之间的关系,我们就可以将它们一起表达为一个屏幕地图,显示所有屏幕及其关系:
图2.示例新闻应用程序的详尽屏幕图。
如果我们后来想要允许用户提交新闻报道或上传照片,我们可以在此图表中添加其他屏幕。
超越简约设计
此时,可以从这个详尽的屏幕图设计一个功能完备的应用程序。简单的用户界面可以包含通向子屏幕的列表和按钮:
导致不同部分的按钮(例如,故事,照片,保存的项目)
表示集合的垂直列表(例如,故事列表,照片列表等)
详细信息(例如,故事视图,全屏照片视图等)
但是,您可以使用屏幕分组技术和更复杂的导航元素以更直观和设备敏感的方式呈现内容。在下一课中,我们将探索屏幕分组技术,例如为平板电脑设备提供多窗格布局。稍后,我们将深入研究Android上常见的各种导航模式。
联系我
QQ:94297366
微信打赏:https://pan.baidu.com/s/1dSBXk3eFZu3mAMkw3xu9KQ
公众号推荐:
转载于:https://blog.51cto.com/4789781/2170485