我的 UIWebView 中的后退按钮有什么问题?

发布于 2024-10-06 15:01:13 字数 1474 浏览 0 评论 0原文

我的应用程序中存在一个问题,我在 webView setEnabled = NO 中编写了后退按钮的编码,但是当应用程序启动且 webViewDidFinishLoad 时,后退按钮 setEnabled = YES。我尝试了所有将后退按钮设置为启用的可能性,但它不起作用。

   -(IBAction) backButton : (id) sender{
                backTapped = YES;
                [webView goBack];
            }
   -(IBAction) fwdButton : (id) sender{
                forwardTapped = YES;
                [webView goForward];
             }

   - (void)webViewDidStartLoad:(UIWebView *)thisWebView{
                    NSLog(@"webViewDidStartLoad");
                [progressWheel startAnimating]; 
                progressWheel.hidden = NO;
                if(!backTapped){
                                    back.enabled = NO;
                    }
                if (!forwardTapped) {
                            forward.enabled = NO;   
                    }
                 }

     - (void)webViewDidFinishLoad:(UIWebView *)thisWebView
      {
                   [progressWheel stopAnimating]; 
               progressWheel.hidden = YES;

               if (!backTapped) {
                            [back setEnabled:thisWebView.canGoBack];
                            back.showsTouchWhenHighlighted = YES;
                      } 

               if (!forwardTapped) {
                            [forward setEnabled:thisWebView.canGoForward];
                            forward.showsTouchWhenHighlighted = YES;
                    }

     }

I have an issue in my application that i wrote coding for the back button in my webView setEnabled = NO, but when the application is launched and webViewDidFinishLoad the back button setEnabled = YES. I tried all possibility to set the back button enabled is equal false but it not works.

   -(IBAction) backButton : (id) sender{
                backTapped = YES;
                [webView goBack];
            }
   -(IBAction) fwdButton : (id) sender{
                forwardTapped = YES;
                [webView goForward];
             }

   - (void)webViewDidStartLoad:(UIWebView *)thisWebView{
                    NSLog(@"webViewDidStartLoad");
                [progressWheel startAnimating]; 
                progressWheel.hidden = NO;
                if(!backTapped){
                                    back.enabled = NO;
                    }
                if (!forwardTapped) {
                            forward.enabled = NO;   
                    }
                 }

     - (void)webViewDidFinishLoad:(UIWebView *)thisWebView
      {
                   [progressWheel stopAnimating]; 
               progressWheel.hidden = YES;

               if (!backTapped) {
                            [back setEnabled:thisWebView.canGoBack];
                            back.showsTouchWhenHighlighted = YES;
                      } 

               if (!forwardTapped) {
                            [forward setEnabled:thisWebView.canGoForward];
                            forward.showsTouchWhenHighlighted = YES;
                    }

     }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

荒路情人 2024-10-13 15:01:13

我实际上不太明白您遇到的问题,但我可以看到两个潜在的问题:

1)您将 backTapped 和forwardTapped 设置为 YES,但从未在任何地方将它们设置为 NO。

2)也许你的xib中没有连接“后退”或“前进”按钮 - 如果它们为零,则 back.enabled = NO 将不执行任何操作。

编辑:

这个逻辑似乎是倒退的:

if (!backTapped)
   back.enabled = NO;

在您的代码中,您将 backTapped 设置为 YES,然后此代码被命中,所以 !backTapped 是!是,即否。

尝试

if (backTapped)
   back.enabled = NO;

I can't actually quite understand the problem you are having, but I can see two potential issues:

1) You set backTapped and forwardTapped to YES, but never set them to NO anywhere.

2) Perhaps you don't have "back" or "forward" buttons wired in you xib - if they are nil then back.enabled = NO will do nothing.

Edit:

This logic seems backwards:

if (!backTapped)
   back.enabled = NO;

In your code you set backTapped to YES, then this code is hit so !backTapped is ! YES which is NO.

Try

if (backTapped)
   back.enabled = NO;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文