【问题标题】:How to hide uiwebview navigation buttons如何隐藏uiwebview导航按钮
【发布时间】:2014-01-30 21:53:52
【问题描述】:

我有一个 UIWebView 用于加载网页。我也有导航按钮,所以你可以在之前加载的页面之间来回切换。没有上一个网页时,有没有办法隐藏导航按钮?

【问题讨论】:

    标签: ios objective-c


    【解决方案1】:

    在这里查看:Why is UIWebView canGoBack=NO in iOS7?

    您可以使用 UIWebView 上的 canGoBack 和 canGoForward 方法在 shouldStartLoadWithRequest 方法中启用/禁用导航按钮:

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request
     navigationType:(UIWebViewNavigationType)navigationType
     {
        if ([webView canGoBack])
        {
            [_browserBackItem setEnabled:YES];
        }
        else
        {
            [_browserBackItem setEnabled:NO];
        }
        if ([webView canGoForward])
        {
            [_browserForwardItem setEnabled:YES];
        }
        else
        {
            [_browserForwardItem setEnabled:NO];
        }
        return YES;
    }
    

    【讨论】:

    • 这实际上会起作用,唯一的问题是我如何使用前进和后退按钮来控制 UIWebView 不是通过我的实现文件我通过右键单击并从 webview 拖动到按钮然后选择动作。我应该用什么将它们实现到我的 .m 文件中?
    • 我不确定我理解你的意思。你能发布一个屏幕截图吗?您需要将 .xib 文件中的按钮链接到您的类,并在 .h 文件中添加一个 IBOutlet,以便您可以在 .m 文件中访问它们。
    • 好的,左边是我的 .h,右边是 .m,i.imgur.com/gR3oqwy.png 我已经将 go back and gofoward 连接到 webview
    • 用 self.goback 和 self.goforward 替换 goBack 和 goBack 应该没问题。
    • 在 .m 文件中替换它们对吗?在 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 下我这样做了,但仍然出现错误
    【解决方案2】:

    我不知道 UIWebView 内置的任何内容允许这样做,但也许您可以尝试使用变量跟踪页面。

    每次发出 url 请求时,都会调用 UIWebView 委托方法,您可以在那里增加变量 (see here)。然后在用户选择后退按钮后递减变量。

    希望对您有所帮助。

    【讨论】:

      【解决方案3】:

      例如,您可以将加载的页面保存在 NSArray 中并测试该数组是否为空,然后隐藏按钮。

      要知道打开的页面,你可以在你的类中实现 UIWebViewDelegate,并在 -webView:shouldStartLoadWithRequest:navigationType: 回调中保存 url。

      【讨论】:

        猜你喜欢
        • 2012-07-03
        • 1970-01-01
        • 1970-01-01
        • 2022-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-21
        • 1970-01-01
        相关资源
        最近更新 更多