【问题标题】:If statement in Xcode to determine which HTML page is being loaded by a UIWebViewXcode 中的 if 语句确定 UIWebView 正在加载哪个 HTML 页面
【发布时间】:2010-10-29 10:51:23
【问题描述】:

我的界面上有一个 UIWebView,并且我添加了一个带有下一个按钮和上一个按钮的 UIToolbar。当我按下下一个按钮时,我希望 WebView 加载不同的 HTML 页面。但是我还想运行一个 if 语句来确定 WebView 当前在哪个 HTML 页面中。

例如。

如果 UIWebView 中加载了 index.html, 当用户按下下一个按钮时,我希望它加载 about.html。

如果 UIWebView 中加载了 about.html, 当用户按下下一个按钮时,我希望它加载contact.html。等等

这是我设置 WebView 的方式:

[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"PrepareEquipment" ofType:@"html"]isDirectory:NO]]];

谢谢大家!

斯特凡。

【问题讨论】:

    标签: iphone html xcode uiwebview if-statement


    【解决方案1】:

    用一个简单的数组或其他集合来按应该显示的顺序存储所有页面怎么样?

    NSArray *pagesArray = [NSArray arrayWithObjects:@"index.html", @"about.html", @"contact.html", nil];
    NSString *currentPage = [pagesArray objectAtIndex:0];
    ...
    
    - (NSString *)getNextPage {
      int pageIndex = [pagesArray indexOfObject:currentPage];
    ++pageIndex;
    pageIndex%= [pagesArray count];
    NSString *nextPage = (NSString *)[pagesArray objectAtIndex:pageIndex];
    currentPage = nextPage;
    return nextPage;
    }
    

    ...还有类似的返回方法?

    完全未经测试...

    【讨论】:

    • 这可能值得一试!会试试的。
    • 前两行应该放在哪里?
    • 在您使用该方法之前在您的班级中的某个位置,例如在 init 部分中,或者在 viewDidLoad 中,如果它是 UIViewController...?
    猜你喜欢
    • 2014-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-19
    • 1970-01-01
    相关资源
    最近更新 更多