如何从设置首选项更新 webview

Posted

技术标签:

【中文标题】如何从设置首选项更新 webview【英文标题】:How do i update webview from settings preferences 【发布时间】:2011-08-10 21:53:16 【问题描述】:

非常简单的问题。我有一个带有加载 url 的单个视图(webview)的应用程序。该应用程序附加了一个设置包,其中一个字段要求输入字符串。这是我的视图控制器中的代码:

-(void)viewDidLoad

[super viewDidLoad];

   NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
   NSString *settingString = [prefs stringForKey:@"name_preference"];
   [prefs synchronize];
   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://www.***.com/%@", settingString]]]];

到目前为止,很好。它从设置中获取字符串并连接 url 的结尾,一切都很好。当我在模拟器中运行时,如果我更改设置中的字符串,我每次都必须关闭 sim 以更新视图。我应该在其他地方放置此代码而不是“viewDidLoad”吗?每次我从设置中重新打开我的应用程序时,我都希望我的 webview 更新。感谢您的所有帮助....

【问题讨论】:

【参考方案1】:

你可以把它放在viewDidAppear(在vc中)或者applicationDidEnterForeground你的app delegate中。

您遇到的问题是,当您通过在主屏幕上点击应用程序来“启动”应用程序时,您实际上只是在使用 ios 的多任务处理来切换回它(它永远不会退出)。

【讨论】:

【参考方案2】:

亚历克斯所说的会奏效。但苹果永远不会接受只有一个UIWebView 的应用程序。如果您希望发布它,我希望您的应用程序有更多内容。

【讨论】:

以上是关于如何从设置首选项更新 webview的主要内容,如果未能解决你的问题,请参考以下文章

如何从共享首选项中检索数组列表并将数组列表设置为 recyclerview

如何通过移动设备首选项设置过滤 OneSignal 推送消息

如何在首选项摘要中显示 Android 首选项的当前值?

从根目录为所有用户设置首选项文件

未在服务中获取共享首选项的更新值

Android - 如何在代码中设置首选项