1

我正在寻找一种从网站调用警报视图的可能性。

我很确定这会以某种方式起作用,因为如果通过在 App Store 中配置您的 Apple ID 和类似的东西,您将通过 web 视图而不是本地环境(在 iOS 7 之前!)导航。

Apple 在那里使用警报视图和操作表以及日期选择器,因此必须有办法这样做。

我无法在网络上或文档中找到任何有用的东西。

干杯

康斯坦丁

4

2 回答 2

1

To achieve this you can use redirects, set javascript onClick function to some DOM element.

f.e

javascript function callNativeAlert(message) {
    window.location = "showAlert://"+message;
}

On UIWebView delegate's you can catch such redirect then show your UIAlertView and ignore loading this page by returning NO

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{

  if ([[request.URL scheme] isEqualToString:@"showAlert"]) {
        //TODO: Show your alert here, or execute any native method
        NSLog(@"The message is %@", [request.URL host])
        ...
        // Always return NO not to allow `UIWebView` process such links
        return NO; 
    }
    ....
}

Note: this code has been written from memory

Note2: of course it works if you can modify both javascript and native application

于 2013-10-09T07:35:22.280 回答
0

你可以使用简单的 JS 函数 alert('message')。

于 2013-10-09T08:50:13.343 回答