-4

嗨,我想在 android 中只显示一项活动 3 次。实际上它是一个对话框,如果用户拒绝它超过 3 次,它会询问用户一些建议,除非用户卸载并重新安装应用程序,否则该对话框将不会再次出现。

任何人都可以建议我解决这个问题。

任何帮助表示赞赏。

4

3 回答 3

1

这是用于有条件地显示对话框。我之前执行过类似的功能。您可以通过在sqlite. 每次用户拒绝建议的对话框时,从数据库中获取条目,检查它是否小于或等于 3。如果小于 3,则显示对话框,通过将 count 变量递增 1 来更新数据库条目。否则,如果超过 3 个,则不显示对话框。

创建数据库并初始化变量:

SQLiteDatabase db=openOrCreateDatabase("MYDB", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS myTbl(Name VARCHAR,num VARCHAR);");
//Here, Name is the name of your counting variable and num is the value you want to store in it

String name="count";
String num="0";

String s="INSERT INTO myTbl VALUES ('"+name+"','"+num+"');";
db.execSQL(s);
Log.d("myapp", "Insertion of data successfull");
db.close();

使用这种方法的好处是,一旦应用程序被卸载,其对应的sqlite数据库也将被删除。因此,这将确保如果用户忽略对话框超过 3 次,则只要卸载并重新安装应用程序,对话框就不会启动。关于更新 sqlite 中的值,我希望您了解基础知识。

希望这有帮助

于 2013-09-23T09:23:20.470 回答
0

您应该使用 SharedPreferences 来计算显示建议的值,例如 0 到 3。对于建议显示,您可以使用单独的布局并将其包含到您的主布局中。那么活动处理的复杂性就会降低。当布局显示 3 次时,不应通过设置其可见性 GONE 来显示特定布局。

于 2013-09-23T09:29:56.543 回答
0

创建一个 SharedPreferences 将 0 作为初始值保存在其中,当用户拒绝时,将该值增加 1 并将其保存在 SharedPreferences 中,一旦值达到 3,就不要再次启动活动。您可以使用数据库而不是 sharedPreferences。

于 2013-09-23T09:22:36.060 回答