【问题标题】:How to get the show text on current screen in iOS webview如何在 iOS webview 中获取当前屏幕上的显示文本
【发布时间】:2016-04-07 14:53:24
【问题描述】:

我想在 iOS UIWebView 上添加书签。 webview 是加载 html 文档。 书签数据应该是 webview 中当前显示屏幕上的文本内容位置。 如果可能,请帮助我。

谢谢。

【问题讨论】:

  • 您已经尝试过什么,请向我们展示您的代码,以便我们更好地了解您想要做什么。
  • 请注意,这是一个问答网站,不是代码编写服务。如果您edit您的问题描述了您到目前为止所尝试的内容以及您遇到的问题,那么我们可以尝试帮助解决具体问题。您还应该阅读How to Ask。
  • 他没有尝试过任何事情,但得到了他想要的东西..只是代码..懒惰的开发人员会倒下..

标签: javascript html ios objective-c webview


【解决方案1】:

使用 UIWebView 您可以获得委托方法:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
- (void)webViewDidStartLoad:(UIWebView *)webView;
- (void)webViewDidFinishLoad:(UIWebView *)webView;
- (void)webView:(UIWebView *)webView didFailLoadWithError:(nullable NSError *)error;

所以你要检查来自webViewDidFinishLoad 的 URL,如下所示:

- (void) webViewDidFinishLoad:(UIWebView *)webView
{
    NSString *requestUrlString = webView.request.URL.absoluteString;
    NSLog(@"requestUrlString : %@", requestUrlString);
}

然后您可以使用 CoreData 或 NSUserDefaults 打开 URL 并将其保存为书签,如下所示:

// New bookmark
NSDictionary *bookmark = @{@"bookmark_title":@"My Bookmark",  @"bookmark_url":@"https://www.google.com/"};

// Get bookmarks
NSMutableArray *bookmarks = [[NSUserDefaults standardUserDefaults] objectForKey:@"myBookmarks"];

// Update bookmarks
[bookmarks addObject: bookmark];
[[NSUserDefaults standardUserDefaults] setObject:bookmarks forKey:@"myBookmarks"]
[[NSUserDefaults standardUserDefaults] synchronize];

【讨论】:

    猜你喜欢
    • 2012-07-23
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 2011-03-05
    • 1970-01-01
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多