Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 管理列表的好方法是什么?_Language Agnostic_User Interface_Non Web - Fatal编程技术网

Language agnostic 管理列表的好方法是什么?

Language agnostic 管理列表的好方法是什么?,language-agnostic,user-interface,non-web,Language Agnostic,User Interface,Non Web,在管理对象列表时,我总是很难设计用户界面 例如,我需要管理一个员工列表。在我的工作中,我们总是在两种管理员工的方法之间切换: 使用单个拆分屏幕,左侧部分为员工列表,右侧部分为编辑员工的位置。顶部通常有一个工具栏(或功能区栏),允许添加/修改/删除 使用两个窗口的方法:第一个窗口是一个完整的列表,顶部有相同的工具栏。当有人按下按钮(或双击员工)时,会打开一个对话框,您可以添加或修改该员工 虽然我更喜欢第二种方法,但我没有任何UI专家的参考来支持我的选择或驳回它 有谁有什么建议或参考资料可以帮助我设

在管理对象列表时,我总是很难设计用户界面

例如,我需要管理一个员工列表。在我的工作中,我们总是在两种管理员工的方法之间切换:

  • 使用单个拆分屏幕,左侧部分为员工列表,右侧部分为编辑员工的位置。顶部通常有一个工具栏(或功能区栏),允许添加/修改/删除
  • 使用两个窗口的方法:第一个窗口是一个完整的列表,顶部有相同的工具栏。当有人按下按钮(或双击员工)时,会打开一个对话框,您可以添加或修改该员工
  • 虽然我更喜欢第二种方法,但我没有任何UI专家的参考来支持我的选择或驳回它


    有谁有什么建议或参考资料可以帮助我设计一个好的UI来管理对象列表吗?

    对话框是模态的,用户体验专家通常对此表示不满。拆分屏幕不仅允许编辑,还允许非常自然地“细读”某个给定员工[或其他类型对象的所有细节](每个人的信息可能比简单列表所能有效显示的更多);“使此详细信息可编辑”的按钮似乎是一种非常平滑、自然和无缝的方法,没有与对话框、弹出窗口、鼠标悬停上出现的工具提示等相关的不愉快之处


    有关用户体验对模态操作的批评的参考摘要,您可以从他们的链接开始并遵循他们的链接。

    我已经成功地使用了“电子邮件客户端”布局。屏幕左侧包含导航元素(类似于电子邮件客户端中的文件夹);在拆分窗口中,右侧分为顶部和底部,顶部包含一个列表(例如,员工列表-类似于电子邮件列表),底部包含一个表单(由选项卡式页面组成),用于编辑列表中的选定项目(类似于您正在撰写或查看的单个电子邮件)。电子邮件客户端布局的主要优点是熟悉-几乎每个人都使用电子邮件!而且主要的电子邮件客户端都遵循相同的布局,增强了熟悉度的优势。

    我不相信您会找到关于这个特定问题的任何实际研究,因为它对手头的应用程序非常具体。归根结底是如何使用/访问/修改单个对象等

    也就是说,这些年来,我一直在这件事上来回奔波,并最终确定了#2。这里有一个来自我们内部应用程序的障碍


    超级用户可以点击鼠标中键在新窗口中打开,随着列表的增长,您可以进行排序、筛选等操作。

    正确答案取决于您的列表主要目标是围绕编辑对象还是查看列表

    如果编辑是不经常进行的操作,您可以将其放在单独的窗口中,并使用主视图上的屏幕空间来显示所需的详细信息


    但是,如果编辑将是一项频繁的操作,您希望它与列表保持一致,因为打开一个新窗口会产生太多的摩擦。

    选项1允许用户一次查看更多列表项,因此当用户可能需要在列表中跳转很多次(例如,查找下一条要编辑的记录)时,最好使用该选项。更多的项目意味着更少的滚动,等等

    选项2通常可以让用户更快地编辑字段,因为不需要等待新的浏览器窗口打开,也不需要用户进行认知重新定位,因此对于大量数据输入(例如,逐个更改每条记录)来说,它更为合适

    通过使用可编辑网格或使用适当控件(文本框、组合框、复选框等)数组替换表,这两个选项都远不如在表中就地编辑,这些控件填充了相应记录集的字段值。用户直接更改表中的字段,然后选择“保存”按钮或菜单项,一次更新所有更改的记录。或者,如果您的带宽可以处理,您可以在字段失去焦点时自动保存

    与选项1和2相比,“在位编辑”具有以下优点:

    • 无需单击编辑按钮即可更改记录,这是一个额外的导航步骤,需要时间和学习(例如,用户必须学习“编辑”图标)

    • 无需为了编辑字段而在另一个位置直观地重新获取字段,从而使编辑更快、更容易

    • 没有第二个窗口或表单布局可供学习和理解,也没有第二个窗口或表单布局可供用户用于其他用途的屏幕空间

    • 无模式–用户可以在编辑和查看之间流畅切换,并在方便时保存


    如果员工在表格中显示的字段太多,即使在水平滚动的情况下也无法显示,则需要在(1)在单个窗口中使用拆分屏幕主详细布局,以及(2)使用两个窗口并允许向下钻取之间进行选择。但是,优化“额外”字段的显示与如何编辑记录是一个单独的问题。可用性的一般规则是,如果某个字段可以由用户编辑,则无论该字段出现在何处,无论是在表格、屏幕的详细信息溢出区域还是单独的向下钻取详细信息窗口中,都应始终使其可由用户编辑。

    我对拆分屏幕的看法是,它使用户很难知道对象何时保存,因为通常没有“保存”或“取消”按钮。@Pierre-有多种方法可以解决这个问题:1。在项目上显示已修改的指示器;2.有一个应用按钮;3.导航到其他项目时隐式保存。(或这些的任何组合)我肯定会推荐一些“对象被修改”的可见指示——例如,不同的背景,或更突出的东西——并应用和取消