android - 困境: prevent StackOverflowException or improve user experience?

标签 android workflow-activity

在我的应用程序中,我有 2 个列表 Activity ,可以通过单击它们的项目来启动一个或另一个。

|--Activity1--|           |--Activity2--|           |--Activity1--|
|   item11    | ->click-> |   item21    |           |   item21    | ->click-> ...
|   item12    |           |   item22    | ->click-> |   item12    | 
|   item13    |           |   item23    |           |   item13    |
|-------------|           |-------------|           |-------------|

所以如果用户点击太多,他可以填充所有堆栈,系统将抛出 StackOverFlowException 不是吗?

当时我选择的解决方案是用 noHistory="true" 标记这 2 个 Activity ,但现在我很遗憾用户无法使用后退按钮在这 2 个 Activity 之间导航。

有人可以帮我找到更好的选择吗?

提前致谢

EDIT: to be more comprehensive, let's explain what is this activity workflow goal :

我有一个数据库,其中存储了与一年中的天数列表相关联的名称列表。一个名字可以链接到多天,一天中的同一件事可以链接到多个名字。

the database schema 

|  names  |---< n, m >---|  days  |

所以这个 Activity 工作流是一种数据库导航器:

  • Activity1NameListActivity,它显示链接到特定日期的姓名列表。
  • Activity2DateListActivity,它显示链接到特定名称的日期列表。

当用户点击 NameListActivity 的一个项目(name)时,DateListActivity 会启动,并显示链接到点击名称。
同样,当用户单击 DateListActivity 的一个项目(day)时,NameListActivity 将以链接到的名称列表启动单击的日期。

最佳答案

So if the user clicks too much, he can fill all the stack and the system will throw a StackOverFlowException isn't it ?

不,不会。

关于android - 困境: prevent StackOverflowException or improve user experience?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2027515/

相关文章:

android - 为什么我的 LocationListener 变为空?

Android SSLEngine 示例

build - 无法使用带有 tfs 13 的构建自动修改 .csproj 文件

c# - WF4 WorkflowDesigner.View 中 "activity selected"的事件

c# - Workflow Foundation 中自定义事件所需参数的默认值

uml - 流程图与 UML 事件图

android - 如何使 Android Gradle 构建依赖于提供 jar 文件的简单(非 android 库,非 java)任务?

android - 通过 fragment 返回时显示白屏?

android - AlarmManager 与 Handler.postDelayed

workflow - 如何使用 Workflow Foundation WF4 在运行时分配默认值?