我有一个带有UIScrollView的UIViewController。此滚动视图包含一些字符串和图像,最近它还包含一个包含YouTube视频的UIWebView。
作为第一种情况,假设用户可以访问Internet,我应该如何向用户显示该框包含当前正在加载的内容?
沉思:
我能够在这个UIWebView(在滚动视图中)上放置一个UIView,其中包含一个UILabel,里面有文本“Loading ...”。但我无法根据视频完全显示的时间删除/隐藏标签,因为我无法通过viewDidAppear等来回复。我也可以访问BOOL,它告诉我用户是否可以访问Internet,因此问题的另一面是设置相同的标签来解释他们没有Web访问权限,如果这是真的。 (这可以解释此滚动视图中是否存在白框)
我还看了一下,当Web视图中的视频缩略图加载完成时,是否可以编写自定义响应器来启动,但是我再也无法获得任何响应器方法。工作。
简而言之,我应该如何解决这个问题?提前感谢您的任何建议或帮助。
答案 0 :(得分:2)
将视图控制器设置为Web视图的delegate
。 UIWebViewDelegate协议定义了两种方法-webViewDidStartLoad:
和-webViewDidFinishLoad:
,您应该可以使用它们来跟踪页面何时开始加载以及(希望)缩略图何时出现。