移动应用程序显示数千种可用记录的最佳方式?

时间:2010-02-11 18:41:01

标签: iphone android user-interface mobile

假设您有一个更大的客户数据库,例如5000条记录。使用简单的选择查询,移动应用程序可能需要2-5秒才能填充列表视图,其中包含所有数千个可用客户。

但是用户只需要选择一个,那么选择客户的最佳方式是什么? 如果您有一些记录,例如:50个客户,选择滚动列表是这样做的最佳方式,但您在做什么来满足数千个选择的显示?

您如何将此问题显示在库存商品中以将其包含在发票上? 这与客户情况不同,因为您会反复将库存项目添加到发票中吗?

编辑1
我将客户端引用到客户/客户数据库的数据库

5 个答案:

答案 0 :(得分:2)

在具有小屏幕和限制性输入的移动设备上,您可以使用分层显示数据来管理大型数据集,从全集的抽象开始,然后深入查看实际的单个条目。

所有数据都可以划分为具有各自子组的子组,依此类推。要在移动设备上显示大型数据集,您只需找到子组并按从最大到最小和/或最常规到最具体的顺序显示它们。

例如,假设你有一个庞大的服装数据库。服装有几个长期建立的和文化上接受的子类别,因此您可以使用它们来掩盖尺寸和复杂性,就像百货商店使用类别将客户引导到正确的部门一样。

当您打开应用程序时,它会执行查询以获取最高级别​​的子类别。在这个例子中,这将是,儿童,男人和女人。当用户选择说男士用具时,他们会得到男士用品的类别列表,例如:季节。然后是服装,衬衫,裤子等类型。然后是特定类型的服装的属性和下到特定的服装物品。

因此,用户的典型输入将运行如下:男士 - >夏季服装 - >衬衫 - >棉花 - >品牌 - >颜色 - >衬衫清单 - >特定衬衫。在每个阶段,应用程序只显示几个供用户选择的选项。

搜索可能很棘手。在移动设备上输入详细搜索可能很困难,但广泛的搜索可以返回许多项目。我认为搜索应该对它们有一些自动限制,例如让用户从可管理大小的列表中选择类别搜索词。如果搜索不能限制在合理范围内,则其结果也应显示在层次结构中。

  

你会如何提出这个问题?   显示要包含的库存项目   他们在发票上?

我会使用可切换的视图。在iPhone上将是一个tabbar。一个选项卡将包含您的发票,另一个选项卡将具有库存系统的分层导航。当您选择清单选项卡中的项目时,它会将它们添加到发票选项卡中。 (如果使用正确配置的数据模型,则会自动进行此操作。)用户可以轻松地从库存中添加项目来查看发票。

Edit01:

我不熟悉Android,但在iPhone上你可以拥有一个非常大的表索引,可以让你跳过可能长达数百个条目的表。查看联系人应用程序以获取索引的示例。

当然,索引实际上只是一个伪装的层次结构。在联系人的情况下,按字母顺序存在联系人组的两级层次结构,然后是以每个字母开头的联系人。

Edit02:

  

您尚未解决数据维护的含义。如果   你添加了很多类别   对库存物品,有一个   保持这些的高开销   最终用户的类别:库存   组&gt; <分组> <分组>   <分组> <分组>个人   item最终用户需要定义和   然后维护层次结构   正确分类每个库存   项目分为每个类别。这是一个很大的问题   工作

嗯,你没有询问维护和更新。您询问了如何显示用户只需要选择一条记录的大量数据。

但是,为了回答这个问题,我再次重申,因为所有数据集都有自然类别,所以您总是可以通过编程方式找到这些类别,以便自动发生。对于客户列表,您将具有名称,地址,电话号码,作业类型,联系频率,重要性等属性,软件可以通过这些属性自动将客户端分类为层次结构。世界上每个客户端管理程序都使用某种类型的自动分类来将数据分解为可管理的块。

您始终可以选择仅创建搜索,但同样,在移动设备上输入复杂搜索会更加困难。要解决该问题,您可以使用一些创意搜索功能。例如,您可以让用户键入名字和姓氏的第一个字母,然后在其上搜索以生成可管理大小的列表。

答案 1 :(得分:1)

您可以像在桌面或Web应用中那样执行此操作:搜索。让他们搜索部分名称或其他标准并显示匹配。对于库存物料,您可以搜索物料代码或名称或类别。对于客户,您可以搜索部分名称或客户代码或城市。

答案 2 :(得分:0)

也许使用过滤器是一个不错的选择?当然,这取决于具体情况,但可能有所帮助。

制作好过滤器的信息: How to dynamically update a ListView on Android

答案 3 :(得分:0)

添加第二层导航怎么样?而不是在一个列表中显示所有客户端,您可以有一个列表显示字母A - Z,单击一个字母然后可以只显示从A开始的姓氏的客户等...

答案 4 :(得分:0)

要考虑的另一个因素是选择用于显示数据的视图的复杂性。是否可以使用普通的旧文本视图显示数据?