2012-04-06 104 views
1

我正在尝试制作一个webview应用程序,并且我被卡住了某处。对话框保存在Android中,启动

当我启动应用程序第一次(用于安装)应该问一个问题,如:

您已经阅读服务条款? 没有

如果我选择“是”,应用程序应该记住它,如果程序再次晚些时候推出应该不会再问。如果我选择“否”,则应用程序应该终止,并且应用程序在下次启动时应该询问相同的问题。

我真的被卡住了,我找不到这样的教程。

回答

0

我会创建一个加载活动,检查它是否要求用户接受权限(TOS),然后是否已进入主要活动,如果不显示它并等待。试试这个在OnCreate中加载活动

SharedPreferences sp = getSharedPreferences("TOS", Context.MODE_PRIVATE); 
boolean hasAccepted = sp.getBoolean("accepted", false); 
if(hasAccepted) 
{ 
    //start next activity 
}else { 
    ///display the TOS 
} 

的然后创建的是一个监听器/无按钮调用这些方法

public void onClickYes(){ 
SharedPreferences sp = getSharedPreferences("TOS", Context.MODE_PRIVATE); 
sp.edit().putBoolean("accepted", true).commit(); 
} 

public void onClickNo(){ 
    finish(); 
} 

这是什么东西做的是当它试图获取应用程序加载SharedPreference“接受”。如果它找不到它,则它使用默认值false(sp.getBoolean(“accepted”,false“)。然后如果用户接受tos,则将”accepted“的SharedPreference存储为true。该应用程序加载它将能够找到的偏好,并返回true,因此不显示TOS

+0

如果上述将不会解决您的问题提醒我 – 2012-04-06 13:59:41

+0

是的,它帮助我在开始,非常我发现了另一种方式类似于你的。现在iam新到stackoverflow,所以我会把它放在这个链接:http://piratepad.net/ep/pad/view/ro.XVh81Dp2bRn/latest – Tirolel 2012-04-07 01:08:08