我正在开发一个 Windows 7 手机应用程序,我希望在用户第一次在手机中使用该应用程序时显示特定页面(用户需要接受的隐私政策)。谁能告诉我如何完成这项工作。
问问题
37 次
2 回答
0
可以在此处找到此问题的可能答案。由于您希望您的页面仅打开一次,因此如果用户已接受该策略,我建议IsolatedStorageSettings保存一个布尔值。
于 2013-10-30T01:46:27.100 回答
0
对于此功能,可以采用两种方法。第一种是始终从隐私政策页面开始,但覆盖 OnNavigatedTo 方法以检查该政策之前是否已被接受。如果有,请导航到您的“主页”。在 Mainpage 中,删除所有 backstack 条目。
隐私政策页面
protected override void OnNavigatedTo(NavigationEventArgs e)
{
// have the accepted the policy?
var settings = IsolatedStorageSettings.ApplicationSettings;
bool accepted;
if(settings.TryGetValue("PolicyAccepted", out accepted))
{
if (accepted)
{
NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
}
}
}
private void OnAcceptButtonClick(object sender, RoutedEventArgs routedEventArgs)
{
var settings = IsolatedStorageSettings.ApplicationSettings;
settings["PolicyAccepted"] = true;
settings.Save();
NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
}
然后在您的 MainPage 中,删除 backstack
protected override void OnNavigatedTo(NavigationEventArgs e)
{
while (NavigationService.CanGoBack) NavigationService.RemoveBackEntry();
}
第二种方法是 UriMapper ,如this SO answer中所述。
于 2013-10-30T17:11:21.157 回答