【问题标题】:doesn't load url from Default Value from settings bundle (ipad)不从设置包(ipad)的默认值加载 url
【发布时间】:2012-01-07 08:06:50
【问题描述】:

我创建了设置包,我在其中添加了一个文本字段,我需要从它加载 url 到 uiwebview。我想为其添加默认值,但在更改加载后它不会加载到 uiwebview 中。

请帮忙!

<dict>
            <key>KeyboardType</key>
            <string>URL</string>
            <key>DefaultValue</key>
            <string>http://iscientist.ru/</string>
            <key>Type</key>
            <string>PSTextFieldSpecifier</string>
            <key>Title</key>
            <string>Домашняя страничка 1</string>
            <key>Key</key>
            <string>url1</string>
        </dict>
        <dict>
            <key>KeyboardType</key>
            <string>URL</string>
            <key>DefaultValue</key>
            <string>http://google.com/</string>
            <key>Type</key>
            <string>PSTextFieldSpecifier</string>
            <key>Title</key>
            <string>Домашняя страничка 2</string>
            <key>Key</key>
            <string>url2</string>
        </dict>

和代码:

NSString *settingValue1 = [[NSUserDefaults standardUserDefaults] stringForKey:@"url1"];
NSURL *urlx1 = [NSURL URLWithString:[NSString stringWithFormat:@"%@", settingValue1]];
NSURLRequest *request1 = [NSURLRequest requestWithURL:urlx1];
[_webView loadRequest:request1];

NSString *settingValue2 = [[NSUserDefaults standardUserDefaults] stringForKey:@"url2"];
NSURL *urlx2 = [NSURL URLWithString:[NSString stringWithFormat:@"%@", settingValue2]];
NSURLRequest *request2 = [NSURLRequest requestWithURL:urlx2];
[webView2 loadRequest:request2];

【问题讨论】:

  • 如何让 Web 视图加载 URL?是否涉及任何代码,如果有,你能证明吗?
  • NSString *settingValue1 = [[NSUserDefaults standardUserDefaults] stringForKey:@"url1"]; NSURL *urlx1 = [NSURL URLWithString:[NSString stringWithFormat:@"%@", settingValue1]]; NSURLRequest *request1 = [NSURLRequest requestWithURL:urlx1]; [_webView loadRequest:request1];
  • 只有在设置中更改默认值时才会加载 url

标签: xcode ipad uiwebview settings settings.bundle


【解决方案1】:

您用来获取默认 URL 的密钥是错误的,nik。

代替

NSString *settingValue1 = 
   [[NSUserDefaults standardUserDefaults] stringForKey:@"url1"];

使用这个:

NSString *settingValue1 = 
   [[NSUserDefaults standardUserDefaults] stringForKey:@"DefaultValue"];

这将返回您尝试加载的http://iscientist.ru/ URL。

【讨论】:

  • nothing... :( 也许是因为我加载了 2 个 webViews?这里是新代码 NSString *settingValue1 = [[NSUserDefaults standardUserDefaults] stringForKey:@"DefaultValue"]; NSURL *urlx1 = [NSURL URLWithString :[NSString stringWithFormat:@"%@", settingValue1]]; NSURLRequest *request1 = [NSURLRequest requestWithURL:urlx1]; [_webView loadRequest:request1];
  • 对于第二个 webview 我使用这个代码 NSString *settingValue2 = [[NSUserDefaults standardUserDefaults] stringForKey:@"url2"]; NSURL *urlx2 = [NSURL URLWithString:[NSString stringWithFormat:@"%@", settingValue2]]; NSURLRequest *request2 = [NSURLRequest requestWithURL:urlx2]; [webView2 loadRequest:request2];
  • 您能否修改您的原始问题以显示所有这些代码内联和 plist?
  • 呃。两本词典。我不知道这个对象是如何保存在您的用户默认值中的。我可能会让另一个Stack Overflow 用户尝试解决您的问题。如果我跑腿回来还没有解决,我会再试一次。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-24
  • 2018-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多