Iphone UIwebView链接延迟
我有一个UIWebView,里面有一些链接。当我点击链接时,在加载链接之前会有大约2-3秒的延迟。是这样的,还是有一个设置我可以改变?Iphone UIwebView链接延迟,iphone,objective-c,ios,cocoa-touch,uiwebview,Iphone,Objective C,Ios,Cocoa Touch,Uiwebview,我有一个UIWebView,里面有一些链接。当我点击链接时,在加载链接之前会有大约2-3秒的延迟。是这样的,还是有一个设置我可以改变? 谢谢。如果您的意思是单击链接后,在突出显示链接之前会有延迟,那么这与UIWebView如何处理触摸有关。我怀疑这能否解释整个2-3秒的延迟,但无论如何,请参阅以删除它 如果你的意思是,点击一个链接需要2-3秒才能看到呈现的页面,那么(不幸的)这是正常的UIWebView即使是一个简单的页面也会呈现得很慢。检查是否在主线程上调用load方法。若您在模拟器上测试它,
谢谢。如果您的意思是单击链接后,在突出显示链接之前会有延迟,那么这与UIWebView如何处理触摸有关。我怀疑这能否解释整个2-3秒的延迟,但无论如何,请参阅以删除它
如果你的意思是,点击一个链接需要2-3秒才能看到呈现的页面,那么(不幸的)这是正常的
UIWebView
即使是一个简单的页面也会呈现得很慢。检查是否在主线程上调用load方法。若您在模拟器上测试它,那个么在次线程上调用方法需要一些时间来执行,而不是崩溃或抛出异常。用performselectornmainthread
方法替换此类调用(如果有)。在iOS5中,属于UIWebView
的UIScrollView
已公开,以便您可以更改其行为。因此,要消除点击延迟,您只需执行以下操作:
[webView.scrollView setDelaysContentTouches:NO]
这样,您就不必使用任何javascript库来消除延迟
作为奖励,您可以通过更改减速率使UIWebView
中的滚动感觉更自然:
[webView.scrollView setDecelerationRate:UIScrollViewDecelerationRateNormal]
您还可以通过使用解决UIWebView触摸延迟问题。这种延迟很烦人,但有趣的是,在人们的心目中,半秒的延迟会变成“2-3秒”。不幸的是,setDelaysContentTouches是触摸延迟,而单击延迟是由等待双击造成的。这个解决方案似乎不能解决这个问题。它解决了我的问题。和+1表示更自然的滚动!