【问题标题】:How to hide/show button based on website changes in UIWEBVIEW如何根据 UIWEBVIEW 中的网站更改隐藏/显示按钮
【发布时间】:2010-12-07 05:27:49
【问题描述】:

嗨,我的 iphone 应用加载了一个 UIWEBVIEW 网站。

我最初加载一个登录页面,我的 javascript 将检查登录是否成功 b4 将他带到另一个网页。

我在工具栏上有一些按钮可以调用javascript函数,但是这些按钮只有在用户登录后才有用,在登录页面根本没有用。

我如何编码,例如,只有当网站发生变化时,才出现按钮,以免误导用户?谢谢

【问题讨论】:

    标签: javascript iphone objective-c button uiwebview


    【解决方案1】:

    为此,您必须实现 webview 委托方法。有一个方法叫

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
    NSURL *url = [request URL];
        NSString *urlString = [url absoluteString];
    
    // Here I am getting the url values as "mob:Camera", "mob:Lib" So splitting the string and finding whether the second one is Camera or not
    
    
        NSArray *splitArray = [urlString componentsSeparatedByString:@":"];
    
    if(![[splitArray objectAtIndex:0] isEqualToString:@"mob"])
        return YES;
    
    if([[splitArray lastObject] isEqualToString:@"Camera"]){
        // Do what ever you want
        [webView stringByEvaluatingJavaScriptFromString:@"alert('Camera Clicked')"];
        }
    }
    

    在这种方法中,我检查了字符串是否包含相机。同样检查用户是否登录。

    提示:通过检查 url 中的用户 ID。

    如果您发现该用户已登录,则可以显示工具栏。

    那么问题就解决了。

    问候,

    萨提亚

    【讨论】:

    • 嗨 satya,如果用户未登录,我可以检查如何检查方法吗? iphone 将如何与 javascript 链接,以知道它是否到达另一个页面?谢谢
    • 嗨,Kenn,在这种方法中,您将拥有请求对象,从该对象读取 url。我已经使用了如下。
    猜你喜欢
    • 2018-03-29
    • 1970-01-01
    • 2016-08-19
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多