0

我有一个简单的单一活动应用程序。我现在想为 EULA 添加另一个页面,在用户按下按钮时显示。

我需要为此定义另一个活动吗?

<intent-filter>在现有的范围内定义另一个<activity>就足够了吗?

4

2 回答 2

2

不,您不需要清单中的新活动。我建议如下:下载这个类并将其添加到您的项目中:http ://code.google.com/p/apps-for-android/source/browse/trunk/DivideAndConquer/src/com/google/android/divideandconquer/ eula.java?r=93

之后,将包含 EULA 文本的文本文件放入“资产”应用程序文件夹中。您可以在此处找到示例 Eula:http: //www.developer-resource.com/sample-eula.htm

最后在主 Activity 的 Create 事件处理程序中或在按钮的侦听器中调用 Eula.show(this) 。

请记住,此类跟踪用户选择的内容(接受/拒绝)。但是你可以覆盖它:下面的代码应该在提供的 Eula 类的 show() 方法的开头插入:preferences.edit().putBoolean(PREFERENCE_EULA_ACCEPTED, false).commit(); 现在,每次单击按钮都会显示 Eula...

于 2011-05-13T22:20:33.763 回答
1

如果这是您想要的,您可以发布一个对话框,而无需创建另一个活动。因此,使用构建器创建一个对话框并在 getInstanceEula 中将其返回,如果您希望它被阻止,则 setCancelable(false),调用 showDialog(DIALOG_EULA),然后在 onCreateDialog 中调用 getInstanceEula。它不会覆盖整个屏幕,但您可以使其可滚动。

于 2011-05-13T21:49:21.297 回答