मेरे पास एक UIScrollView है जिसमें लंबवत केवल स्क्रॉलिंग सक्षम है। मैं बटन का ग्रिड प्रदर्शित कर रहा हूं (फोटो व्यूअर छवि ग्रिड के समान)। स्क्रीन अभिविन्यास के आधार पर ग्रिड को अलग-अलग खींचा जाना चाहिए, ताकि सभी स्क्रीन रीयल एस्टेट का उपयोग किया जा सके। मेरे बटन के आकार को देखते हुए, मैं पोर्ट्रेट में 3 प्रति पंक्ति फिट और परिदृश्य में 4 प्रति पंक्ति फिट कर सकता हूं।अभिविन्यास परिवर्तन के दौरान SetContentSize के बाद शीर्ष पर स्क्रॉल करने के लिए UIScrollView ऑटो-स्क्रॉल - मैं इसे कैसे रोक सकता हूं?
मैं सभी बटनों को पुनर्स्थापित करता हूं: willRotateToInterfaceOrientation: अवधि और फिर कॉल करें: setContentSize: मेरे UIScrollView पर। सेटकंटेंट आकार पर कॉल के बाद होने वाली ऑटो-स्क्रॉलिंग के अपवाद के साथ सब कुछ ठीक काम करता है:। दूसरे शब्दों में, मान लीजिए कि मैं चित्र में था, और सूची के नीचे 3/4 स्क्रॉल किया गया, जब मैं परिदृश्य में घुमाता हूं, तो यह शीर्ष पर सभी बैक अप को स्क्रॉल करता है।
दिलचस्प बात यह है कि, एक ही परिदृश्य में, यदि मैं एक छोटा झटका स्क्रॉल ऊपर या नीचे करना चाहता था, और फिर डिवाइस को तुरंत घुमाता है, तो स्क्रॉल दृश्य सही ढंग से फिर से चलाता है, और वर्तमान स्क्रॉल स्थिति को बरकरार रखता है!
तो, स्पष्ट होने के लिए, यहां अपराधी सेटकंटेंट साइज लगता है: लेकिन स्पष्ट रूप से मुझे इसे स्क्रॉल दृश्य के लिए सही तरीके से स्क्रॉल करने के लिए कॉल करना होगा।
कोई भी विचार मैं वर्तमान स्क्रॉल स्थिति को कैसे बनाए रख सकता हूं?
धन्यवाद!
यह नहीं करता है 'है टी काम नहीं इसका उपयोग करने के समान प्रभाव है: scrollView.scrollsToTop = NO; जो, हां, स्टेटस बार टैप करते समय ऑटो-स्क्रॉल को शीर्ष पर रोकता है, हालांकि, मेरे मूल प्रश्न में वर्णित व्यवहार अभी भी जारी है ... – bpatrick100
एक और विचार: 'setContentSize:' को कॉल करने से पहले, याद रखें कि कहां में सामग्री जो आप हैं, उसके बाद उस कॉल के बाद, 'setContentOffset:' पर कॉल करें। यह मामला हो सकता है कि जब आप सामग्री आकार सेट करते हैं, तो सामग्री ऑफसेट उद्देश्य से रीसेट (0,0) पर रीसेट हो जाती है। हो सकता है कि आपने सामग्री आकार को उस चीज़ पर रीसेट कर दिया हो जो अब आकार को रीसेट करने से पहले सामग्री ऑफसेट था जो भी शामिल नहीं था। तो एसडीके शायद यह सुनिश्चित करके कुछ डिग्री तक उपयोगकर्ता अनुभव कर रहा है कि सामग्री आकार बदलने के बाद कुछ हमेशा दिखाया जाता है। –