2011-05-13 19 views
5

सरल समस्या, मेरे पास एक वेबव्यू है जो उपयोगकर्ता को ज़ूम इन और आउट करने में सक्षम होने के लिए केवल एक छवि पकड़ना है। मेरी नजर को साफ रखने के लिए, मैं इस दृश्य पर पूरी तरह से बाउंसिंग अक्षम करना चाहता हूं, लेकिन फिर भी स्क्रॉलिंग की अनुमति देता हूं। यह समाधान ऊर्ध्वाधर उछाल के लिए काम करता है, लेकिन जैसे ही मैं एक आकार की स्क्रीन से बड़ा करने के लिए छवि ज़ूम के रूप में, क्षैतिज उछाल अभी भी संभव है:UIWebView क्षैतिज उछाल को बंद करने के लिए कैसे करें

for (id subview in webView.subviews 
{ 
    if ([[subview class] isSubclassOfClass:[UIScrollView class]]) 
    { 

     ((UIScrollView*) subview).bounces = NO; 
     ((UIScrollView*) subview).alwaysBounceVertical = NO; 
     ((UIScrollView*) subview).alwaysBounceHorizontal = NO; 
     ((UIScrollView*) subview).bouncesZoom = NO;    
    } 
} 

उत्तर

11

निम्नलिखित कोड हमें उछल को रोकने के लिए के लिए चाल किया:

NSString* scriptToPreventBouncing = @"<script type=\"text/javascript\"> document.ontouchmove = function(e){ e.preventDefault(); } </script>"; 
NSString* footerHTML = @"<div>All rights reserved</div>"; 
[footer loadHTMLString: [scriptToPreventBouncing stringByAppendingString:footerHTML] baseURL:[NSURL URLWithString:@"http://somewebsite.com"]]; 

मुझे यकीन नहीं है कि यह छवि के ज़ूमिंग को अक्षम कर देगा या नहीं। लेकिन यह उछाल बंद करना चाहिए।

+0

ज़ूमिंग और पूरी तरह से –

+0

स्क्रॉल रोक था कि महान काम किया! अब मैं सिर्फ इसलिए लिख रहा हूं क्योंकि 2 शब्द स्टैक ओवरफ़्लो के लिए पर्याप्त नहीं हैं जैसे कि मुझे आपका जवाब पसंद है। ;) – horseshoe7

+0

यह समाधान वास्तव में सरल है! यह बहुत प्रतिष्ठा अंक के लायक है! – wagashi

7

iOS 5 पर आप अपनी समस्या इस तरह से हल कर सकते हैं:

UIWebView *webView = [[UIWebView alloc] ....]; 

webView.scrollView.scrollEnabled = NO; 
webView.scrollView.bounces = NO; 

नोट: यह केवल iOS5 पर काम करते हैं और होगा उच्च

+0

मेरे लिए, यह क्षैतिज उछाल को रोकता नहीं है। – ancajic

+0

सुधार, यह केवल ट्विटर.com के लिए था – ancajic

संबंधित मुद्दे