UIWebView class reference हतोत्साहित एक UIScrollView में एक UIWebView embedding:
महत्वपूर्ण: आप UIScrollView वस्तुओं में UIWebView या UITableView वस्तुओं एम्बेड नहीं करना चाहिए। यदि आप ऐसा करते हैं, तो अप्रत्याशित व्यवहार परिणाम कर सकते हैं, क्योंकि दो वस्तुओं के लिए स्पर्श इवेंट को मिलाया जा सकता है और गलत तरीके से संभाला।
हालांकि मुझे लगता है कि आप अभी भी अपने सुविधा ;-) लागू करना चाहते हैं
आइडिया 1: एक UIScrollView में UIWebView एम्बेड न करें, इसके बजाय UIWebView के stringByEvaluatingJavaScriptFromString:
विधि का उपयोग कर जावास्क्रिप्ट चलाने के लिए, करने के लिए डोम को संशोधित नीचे एक टूलबार जोड़ें। यदि आवश्यक हो, तो आप कुछ कस्टम यूआरएल योजनाओं को पंजीकृत करके टूलबार पर धक्का दिए गए किसी भी बटन से कॉलबैक ऑब्जेक्ट-सी कोड कॉल कर सकते हैं।
आइडिया 2: एक UIScrollView में UIWebView एम्बेड करते हैं, लेकिन एक सामान्य UIView में न करें। विग्नेश के सुझाव पर बिल्डिंग, प्रतिनिधि के माध्यम से अपने वेब व्यू के आंतरिक स्क्रॉल व्यू के scrollViewDidScroll:
कॉलबैक को सुनें, contentOffset
बनाम contentSize
की ऊंचाई को कॉलबैक कहलाते समय प्रत्येक बार देखें। एक बार वे बराबर होने के बाद, इसका मतलब है कि आप नीचे आ गए हैं। एक बार ऐसा होने पर आप अपने टूलबार के फ्रेम को "UIView" दर्ज करने और वेबव्यू के फ्रेम को "पुश" करने के लिए एनिमेट कर सकते हैं।
आइडिया 3: ऐप्पल की सिफारिश को अनदेखा करें, और UIWebView को UIScrollView में एम्बेड करें। विग्नेश के सुझाव पर बिल्डिंग, प्रतिनिधि के माध्यम से अपने वेब व्यू के आंतरिक स्क्रॉल व्यू के scrollViewDidScroll:
कॉलबैक को सुनें, contentOffset
बनाम contentSize
की ऊंचाई को कॉलबैक कहलाते समय प्रत्येक बार देखें। एक बार वे बराबर होने के बाद, इसका मतलब है कि आप नीचे आ गए हैं। एक बार ऐसा होने पर वेब दृश्य की userInteractionEnabled
प्रॉपर्टी सेट करें, और इसे स्क्रू व्यू पर YES पर सेट करें जिसमें वेब व्यू और टूलबार शामिल है। उम्मीद है कि स्क्रॉल सुचारू रूप से पर्याप्त जारी रहेगा। बेशक आपको userInteractionEnabled
को वापस स्विच करने के लिए निर्धारित करने के लिए उसी स्क्रॉल व्यू को उसी तरीके से सुनना होगा।
इस विचार पर एक भिन्नता वेबव्यू के लिए userInteractionEnabled
को NO पर सेट करना होगा, लेकिन वेब सामग्री के फ्रेम की ऊंचाई को अपनी सामग्री से मिलान करने के लिए सेट करें आकार, और सामग्री को विस्तारित करें, इसके अनुसार युक्त स्क्रॉल दृश्य का आकार देखें।
दोनों रूपों दोष यह है कि कुछ मामलों में आप इस तरह के लिंक :-(लेकिन शायद कि आपके मामले के लिए काफी अच्छा है पर क्लिक के रूप में काम करने के लिए सक्षम नहीं होगा है। कम से कम पहले बदलाव में यह इतना बुरा नहीं है।