我有一个加载网页的UIWebView控制器,我想在页面顶部添加一些带有刷新和关闭按钮的栏。 该栏应该在页面加载时隐藏,如果用户点击页面的顶部,则应该再次显示。
有谁知道如何接近它?有没有简单的方法呢?
更新:
我想我对这个问题不够清楚,所以这里有一些澄清:
1.应用程序是一个标准应用程序,其中一个流程打开加载网页的UIWebView
2.我正在寻找的是一个可以在网页顶部向下滑动的栏(在UIWebView中加载),并且可以帮助用户克服由于某种原因未加载网页的情况。
3.栏应该保持后面(只需关闭UIWebView)并刷新(重新加载UIWebView)操作。
希望它有所帮助。
谢谢, Shimix
答案 0 :(得分:0)
除非我错过了这样做的图书馆/项目,否则我认为没有一种简单的方法可以做到这一点。
我已经编写了类似于Safari移动地址栏的内容,并且从内存中,它涉及使用私有api和/或玩“不那么私密,但使用风险自负” {{ 1}}子视图层次结构...
答案 1 :(得分:0)
我现在正在做类似的事情,到目前为止,这就是我想出的。其中一些可能是显而易见的,但很重要:
navigationItem
。navigationItem
。Prompt
的{{1}}属性显示网页标题。navigationBar
动画。 答案 2 :(得分:0)
使用调用webview的刷新,后退和前进方法的UIBarButtonItems在webview上方添加UIToolbar非常简单。您还可以将webviewdelegate方法添加到视图控制器,以检测页面何时加载并以此方式隐藏/显示工具栏。
如果您希望将刷新和导航控件显示为webview本身的html内容的一部分,那么这是一个更小的试图,但并非不可能。您可以使用webview的shouldLoadRequest委托方法来检测这些按钮是否已被点击,然后在viewcontroller中执行相应的操作。隐藏和显示导航栏必须在javascript中处理。