您好我想在Android中只显示一次活动3次。实际上它是一个对话框,询问用户一些建议,如果用户拒绝它超过3次该对话框将不再出现,除非用户卸载并重新安装该应用程序。
有人可以建议我解决这个问题。
感谢任何帮助。
答案 0 :(得分:1)
这是用于条件显示对话框。我之前已经执行过类似的功能。您可以通过sqlite
中的计数变量来实现。每次用户拒绝建议对话框时,从数据库中获取条目,检查它是否小于或等于3.如果小于3,则显示对话框,通过将计数变量递增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中的值,我希望你知道基础知识。
希望这有所帮助
答案 1 :(得分:0)
创建SharedPreferances保存0作为初始值,在用户拒绝时,将值递增1并将其保存在SharedPreferances中,一旦值达到3,不要再次启动活动。您可以使用数据库而不是sharedPreferances。
答案 2 :(得分:0)
您应该使用SharedPreferance来计算显示建议的值,例如0到3.对于建议显示,您可以使用单独的布局并使用将其包含在主布局中。然后,活动处理的复杂性将会降低。当布局显示三次时,不应通过设置其可见性GONE来显示特定布局。