ios - ASP.Net LinkBut​​ton 和 iOS UIWebView

标签 ios uiwebview xamarin.ios linkbutton

我发现,如果按钮是 asp.net LinkBut​​ton,嵌入的 UIWebView 不会导致回发,但它们可以与 Button 的。 Safari 会像平常一样对 LinkBut​​ton 进行回发。

有什么解决方法吗?

代码片段:

vwWebView.LoadRequest (new NSUrlRequest (new NSUrl (url)));

(我们使用的是单点触控,但这似乎是 iOS 问题)

最佳答案

事实证明,UIWebView 的默认用户代理使 IIS 不向内容项发送 javascript。解决办法是手动将webview的useragent设置为mobile safari的useragent。

这是实现这一点的代码:

static public void SetUserAgent(UIWebView webview) {
    var agent = "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A403 Safari/8536.25";
    var webDocumentView = new NSObject(Messaging.IntPtr_objc_msgSend(webview.Handle,
                                                                     (new Selector("_documentView").Handle)));
    var webView = webDocumentView.GetNativeField("_webView");
    Messaging.void_objc_msgSend_IntPtr(webView.Handle, 
                                       (new Selector("setCustomUserAgent:")).Handle,                        
                                       (new NSString(agent)).Handle);
}

这篇文章提供了解决方案: http://blog.reinforce-lab.com/2010/06/monotouchuiwebviewhowtochangeuseragent.html

以下帖子无效。它仅削减第一个请求,但不削减后续浏览:http://monotouch.2284126.n4.nabble.com/seting-UIWebview-user-agent-objectiveC-question-td3807602.html

关于ios - ASP.Net LinkBut​​ton 和 iOS UIWebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12920553/

相关文章:

ios - 当 UIScrollView 滚动时,导航和工具栏不会隐藏

ios - 用于存储相关常量的全局变量/单例替代方案

ios - UIWebview:不旋转也不调整大小以适应整个屏幕

ios - 如何将 SVG 内容作为 NSString 传递给 UIWebView?

ios - Monotouch.Dialog 从数据库生成并保留值

ios - 使用 Swift 播放随机音频文件

objective-c - 从 XCode 调用本地 HTML 文件时出现问题

c# - Xamarin iOS : Starting timer crashes app with no exception

ios - 无法将Apple帐户添加到Visual Studio 2017

ios - 没有越狱的iPhone短信拦截