Phonegap項目中禁用WebViewBounce


UIWebView是iOS SDK中一個最常用的控件,在PhoneGap中,默認也是使用UIWebView作為默認視圖顯示我們的HTML應用的。
 
在使用PhoneGap的項目中,默認WebViewBounce這個選項是打開的,所以使用手指向下或者向上滑動屏幕時,經常會看到頁面底部和屏幕底部會出現一大片空白,然后松開手指后,再彈回去的特效。
 
之前查了很多資料,說可以通過修改 plist 或者 config.xml 來關閉這個效果,如下:
 

    <preference name="WebViewBounce" value="false" />
    <preference name="DisallowOverscroll" value="true" />

 
經過我在 PhoneGap 2.6、PhoneGap 2.9 這兩個版本中測試后,發現都不能夠生效。經過分析,實際上iOS中的PhoneGap項目,只不過是默認初始化一個UIWebView,然后在這個視圖中加在HTML資源,那么我們可以直接使用原生代碼將Bounce禁用。如下所示:
 

- (void)webViewDidFinishLoad:(UIWebView*)theWebView
{
    
// Black base color for background matches the native apps
    theWebView.
backgroundColor = [UIColorblackColor];
    [(UIScrollView *)[[theWebView subviewsobjectAtIndex:0setBounces:NO];

    return [superwebViewDidFinishLoad:theWebView];
}

 
再重新編譯之后,可以看到效果了吧 :)
 
參考資料:
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM