Android UX - 如何向用户显示列表项是可点击的?
Android UX - how to show the user that a list item is clickable?
我在 Android activity 中有一个清单。
我是否需要添加一些内容让用户知道他们将通过单击某个项目获得更多详细信息? (它会打开一个新的 activity。)
我可以为每个项目添加一个按钮,但它看起来很难看。
1) Showcaseview 将是最好的方式
2) 或使用 Card view ,这样用户就可以确定该项目是可点击的,在某些情况下也是可展开的。
(类似于 Google 电话中的通话记录)
目前我想到了 3 种方式:
- 使用简单的弹出消息。
这可以通过使用对话框(这可能会分散用户的注意力,不推荐)或使用 SnackBar.
来实现
缺点: 用户很可能会偏离我们的初衷。
- 使用工具提示
工具提示通常用于桌面应用程序。它几乎就像使用按钮一样,尽管我们将其用作纯粹的信息。
ToolTip
的一些图书馆:
android-simple-tooltip
tooltips
tooltip
缺点: 对于 ListView 或 RecyclerView,我们可能会结束使用过多的工具提示。
- 使用 ShowCaseView
从 UI 和 UX 的角度来看,这是要走的路。 Google 当 Android 的用户第一次打开他的设备时使用它。
ShowCaseView的一些库:
ShowCaseView
MaterialIntroView
Android-Cling
你不需要那样做。 UX 中的默认行为就像单击列表项时会出现某些内容。
您可以通过单击项目打开一个新的 activity,其中可以在菜单中显示带有选项的详细说明。
或者您可以打开带有项目的 AlertDialog,以在用户单击列表项目时显示用户选项。
String[] items = {"View", "Delete", "Update"};
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// choices goes here
}
});
builder.create().show();
我在 Android activity 中有一个清单。
我是否需要添加一些内容让用户知道他们将通过单击某个项目获得更多详细信息? (它会打开一个新的 activity。)
我可以为每个项目添加一个按钮,但它看起来很难看。
1) Showcaseview 将是最好的方式
2) 或使用 Card view ,这样用户就可以确定该项目是可点击的,在某些情况下也是可展开的。 (类似于 Google 电话中的通话记录)
目前我想到了 3 种方式:
- 使用简单的弹出消息。
这可以通过使用对话框(这可能会分散用户的注意力,不推荐)或使用 SnackBar.
来实现 缺点: 用户很可能会偏离我们的初衷。 - 使用工具提示
工具提示通常用于桌面应用程序。它几乎就像使用按钮一样,尽管我们将其用作纯粹的信息。
ToolTip
的一些图书馆:
android-simple-tooltip
tooltips
tooltip
缺点: 对于 ListView 或 RecyclerView,我们可能会结束使用过多的工具提示。 - 使用 ShowCaseView
从 UI 和 UX 的角度来看,这是要走的路。 Google 当 Android 的用户第一次打开他的设备时使用它。
ShowCaseView的一些库:
ShowCaseView
MaterialIntroView Android-Cling
你不需要那样做。 UX 中的默认行为就像单击列表项时会出现某些内容。
您可以通过单击项目打开一个新的 activity,其中可以在菜单中显示带有选项的详细说明。
或者您可以打开带有项目的 AlertDialog,以在用户单击列表项目时显示用户选项。
String[] items = {"View", "Delete", "Update"};
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// choices goes here
}
});
builder.create().show();