设计最佳实践 - 处理用户选择的最佳方式

时间:2012-06-16 15:14:07

标签: android

我是一位经验丰富的开发人员(WPF),正在转向Android开发。我的问题:我正在开发的应用程序允许用户浏览其本地存储(例如SDCARD)并选择文件。现在,我应该简单地创建一个新的Activity(在用户做出选择之后)来处理我想让应用程序对所选文件执行的操作, - 或者 - 是传递所选文件的路径/名称的更好方法回到主要的Activity并让IT推出下一个Activity?

换句话说,让主要活动启动其他(支持)活动是更好的做法,或者将一个活动链连接到另一个活动链是否完全正常和正常?

谢谢!

2 个答案:

答案 0 :(得分:1)

简短而甜蜜:使用单独的活动,因为Android就是为处理不同的UI操作而设计的。

来自Android Dev Documentation:

  

系统中的活动作为活动堆栈进行管理。当一个新的   活动开始后,它被放置在堆栈的顶部并成为   正在运行的活动 - 之前的活动始终低于它   在堆栈中,并且在新的之前不会再次出现   活动退出。

活动基本上有四种状态:

  • 如果屏幕前景中的活动(位于屏幕顶部) 堆栈),它处于活动状态或正在运行。

  • 如果活动失去焦点但仍然可见(也就是说,新的非全尺寸或透明活动专注于您的活动之上 活动),它被暂停了。暂停的活动完全存在(它 维护所有州和会员信息并保持附加 窗口管理器),但可以被极低的系统杀死 记忆情境。

  • 如果某项活动被另一项活动完全遮挡,则会停止该活动。它仍然保留所有州和会员信息,但是, 它不再对用户可见,因此它的窗口是隐藏的 当其他地方需要记忆时,系统经常会被系统杀死。

  • 如果活动暂停或停止,系统可以通过要求完成活动或仅仅通过查杀来从内存中删除活动 它的过程。当它再次显示给用户时,它必须是 完全重新启动并恢复到以前的状态。

答案 1 :(得分:0)

是的,有一系列活动完全没问题。主要是因为导航:如果用​​户选择文件,使用它然后按下“后退”按钮,那么他将看到上一个打开的活动(然后,他可能会选择另一个文件) 。换句话说,它对用户来说是不可预测的行为。