UIScrollView स्क्रॉल नहीं कर रहा है


128

मेरे पास एक है UIScrollViewजिसमें कई UIImageViews, UILabels, आदि हैं ... लेबल बहुत लंबे हैं कि UIScrollView, लेकिन जब मैं एप्लिकेशन चलाता हूं, तो मैं क्लिक नहीं कर सकता और नीचे स्क्रॉल कर सकता हूं ...

ऐसा क्यों हो सकता है?

धन्यवाद


नया ३/२६/२०१३ मैं कोड के बिना यह करने के लिए एक आसान तरीका पर ठोकर खाई (सामग्री सेट करें) stackoverflow.com/a/15649607/1705353
डिकी सिंह

जवाबों:


169

एक पूर्ण कार्य कोड स्निपेट दिखाना हमेशा अच्छा होता है:

// in viewDidLoad (if using Autolayout check note below):

UIScrollView *myScrollView;
UIView *contentView;
// scrollview won't scroll unless content size explicitly set

[myScrollView addSubview:contentView];//if the contentView is not already inside your scrollview in your xib/StoryBoard doc

myScrollView.contentSize = contentView.frame.size; //sets ScrollView content size

स्विफ्ट 4.0

let myScrollView
let contentView

// scrollview won't scroll unless content size explicitly set

myScrollView.addSubview(contentView)//if the contentView is not already inside your scrollview in your xib/StoryBoard doc

myScrollView.contentSize = contentView.frame.size //sets ScrollView content size

मुझे IB में सामग्री सेट करने का कोई तरीका नहीं मिला है (Xcode 5.0 के रूप में)

नोट: यदि आप इस कोड को डालने के लिए सबसे अच्छी जगह ऑटोलैयूट का उपयोग कर रहे हैं तो यह -(void)viewDidLayoutSubviewsविधि के अंदर है ।


12
myScrollView.delegate = selfALSO को सेट करना न भूलें , अगर यह अभी भी काम नहीं कर रहा है, तो नीचे दिए गए जवाब में यह अच्छी सलाह है (अपने xib / StoryBoard पर जाएं और सुनिश्चित करें कि "AutoLayout अक्षम है")। प्रो-टिप: आप <UIScrollViewDelegate>अपनी .h फ़ाइल में भी शामिल कर सकते हैं यदि आप प्रोग्राम करना चाहते हैं जैसे कि प्रोग्राम को अपने UIScrollView को स्क्रॉल करें।
अल्बर्ट रेनशॉ

1
@AlbertRenshaw आपको एक उत्तर जोड़ना चाहिए था ताकि मैं आपको +1 दे सकूं। ऑटोलेयआउट मेरे साथ मुद्दा था .... मुझे 4 घंटे के लिए पागल कर दिया।
लॉजिस्टोलॉजिस्ट

2
इसमें कोड डालकर viewDidLayoutSubviewsयह मेरे लिए काम करता है।
अमृत ​​लॉट

मेरे लिए मुद्दा यह था कि इसे स्क्रॉल करने की आवश्यकता नहीं थी, क्योंकि स्क्रीन पर सब कुछ फिट है।
डैनियल स्प्रिंगर

122

यदि आप सामग्री को सही ढंग से सेट करने के बाद भी दृश्य को स्क्रॉल नहीं कर सकते हैं , तो सुनिश्चित करें कि आप इंटरफ़ेस बिल्डर -> फ़ाइल इंस्पेक्टर में "ऑटोलेयआउट का उपयोग करें" को अनचेक करें।


164
वैकल्पिक रूप से, आप contentSize को viewDidLayoutSubviews में सेट कर सकते हैं : और यह ऑटोलयूट पूरा होने के बाद लागू किया जाएगा।
क्रिस वासेली 5

2
@ "क्रिस वासेली" ने मेरा मुद्दा उठाया .. GR8 .. :-)
अयाज़

3
क्रिस की टिप्पणी का एक अलग उत्तर होना चाहिए!
निंजानेर

1
बहुत बहुत धन्यवाद क्रिस Vasselli! ऑटो लेआउट सक्षम होने के साथ, यह viewDidLoad में काम नहीं करेगा लेकिन यह viewDidLayoutSubviews के साथ करता है!
रोमेन

1
वाह, मैंने पहले कभी इन सभी टिप्पणियों पर ध्यान नहीं दिया! खुशी है कि मैं आप में से कई की मदद कर सका! मैंने सिर्फ एक अलग उत्तर पोस्ट किया है, इसलिए उम्मीद है कि इसे ढूंढना आसान होगा।
क्रिस वासेली

68

contentSizeइसे ठीक से स्क्रॉल करने के लिए आपको स्क्रॉल दृश्य की संपत्ति सेट करने की आवश्यकता है ।

आप autolayout का उपयोग कर रहे हैं, तो आप सेट करने की जरूरत है contentSizeमें viewDidLayoutSubviewsक्रम में के लिए यह autolayout पूर्ण होने के बाद लागू किया जाएगा।

कोड इस तरह दिख सकता है:

-(void)viewDidLayoutSubviews
{
    // The scrollview needs to know the content size for it to work correctly
    self.scrollView.contentSize = CGSizeMake(
        self.scrollContent.frame.size.width,
        self.scrollContent.frame.size.height + 300
    );
}

धन्यवाद एक टन .. यह काम इसलिए किया क्योंकि किसी कारण से, जब मैं contentSizeआकार के मान को सेट करता हूं contentView, तो स्क्रॉलव्यू और सामग्री दृश्य का आकार समान होने लगता है। लेकिन की ऊंचाई से contentSizeअधिक मूल्य की ऊंचाई की स्थापना contentView, यह काम किया।
स्काईवॉकर

viewDidLayoutSubviewsएक जीवनचक्र के दौरान कई बार कॉल किया जा सकता है ताकि आप जोखिम को ऊंचाई से बढ़ाकर चला सकें।
anon_nerd

@anon_nerd यह जांचें कि क्या यह पहले से ही कहा गया था और केवल ऊंचाई जोड़ें अगर नहीं
डैनियल स्प्रिंगर

45

ऊपर दिया गया उत्तर सही है - स्क्रॉलिंग होने के लिए, सामग्री का आकार निर्धारित करना आवश्यक है।

यदि आप इंटरफ़ेस बिल्डर का उपयोग कर रहे हैं, तो उपयोगकर्ता परिभाषित रनटाइम विशेषताओं के साथ ऐसा करने का एक अच्छा तरीका है। उदाहरण के लिए:

यहाँ छवि विवरण दर्ज करें


यह मेरे लिए कुछ नहीं किया।
coolcool1994

4
ओह, चित्र {0, 0} दिखाता है, लेकिन आपको निश्चित रूप से बड़ी संख्या में प्रवेश करना है। । यह दृष्टिकोण केवल सरल विचारों के लिए काम करेगा जहाँ आप सामग्री-आकार को सामने से जानते हैं। । । (वास्तव में, जटिल विचारों के लिए मैं वैसे भी शुद्ध कोड सुझाता हूं)।
जैस्पर ब्लूज

यह प्रोग्रामिक रूप से करने की तुलना में बहुत कम हैकी है। धन्यवाद!
जेक स्टॉफ़लर

1
@JakeStoeffler का स्वागत है! :) आईबी का उपयोग करते समय, मैं सभी विन्यास को वहां रखना पसंद करता हूं (खंडित नहीं)। लेकिन जब चीजें जटिल हो जाती हैं (पुन: देखने योग्य विजेट्स; मॉडल एडेप्टर, लेयर मैनिपुलेशन; CAAimimations, आदि) तब मैं पूरी तरह से प्रोग्रामेटिक विचार पसंद करता हूं। । । अधिक धाराप्रवाह।
जैस्पर ब्लूज़

मैंने यह कोशिश की, जब दृश्य दिखाई देता है तो काम करता है, लेकिन अभिविन्यास परिवर्तन पर, ऊपर स्क्रीन पर परिभाषित सामग्री को नजरअंदाज कर दिया जाता है और मेरा लॉग कहता है कि सामग्री सेट 0,0 वापस आ गई है। किसी भी विचार कैसे तय करने के लिए?
शोगले

40

सामग्री आकार को बड़ी संख्या में आकार देने का प्रयास करें। मुझे समझ में नहीं आ रहा है कि जब मेरा कंटेंट साइज़ कंट्रोल साइज़ से बड़ा होने लगता है तो भी मेरा स्क्रॉल व्यू क्यों नहीं स्क्रॉल करता है। मुझे पता चला कि यदि सामग्री का आकार आवश्यकता से छोटा है, तो यह भी काम नहीं करता है।

self.scrollView.contentSize = CGSizeMake(2000, 2000);

2000 के बजाय आप अपनी खुद की बड़ी संख्या डाल सकते हैं। और अगर यह काम करता है, तो इसका मतलब है कि आपके आकार का आकार बड़ा नहीं है जब आप आकार बदलते हैं।

स्क्रॉल दृश्य को कार्य करने के लिए प्रतिनिधि आवश्यक नहीं है।


2
प्रतिभा - यह जांचने का एक सरल तरीका है कि क्या चल रहा है। बहुत बहुत धन्यवाद!
पागल चिम्प

13

सुनिश्चित करें कि आपके पास स्क्रॉल आकार की संपत्ति को सही आकार में सेट करना है (यानी, सभी सामग्री को शामिल करने के लिए पर्याप्त बड़ा)।


1
क्या मुझे यह प्रोग्रामिक रूप से करना है? या क्या मैं इसे आईबी में कर सकता हूँ?
मार्क

यदि आप IB का उपयोग कर रहे हैं, तो आप इसे वहां से सेट कर सकते हैं - नीचे देखें। । (अलग उत्तर, इसलिए मैं pics शामिल कर सकता हूं)।
जैस्पर ब्लूज

7

अनचेक for यूज ऑटोलाययूट ’ने मेरे लिए चाल चली।

पर्यावरण: xCode 5.0.2 स्टोरीबोर्ड ios7


5

मेरे मामले में मुझे यह delaysContentTouchesसच करना था क्योंकि स्क्रोल व्यू के अंदर की सभी वस्तुएं टच ईवेंट को कैप्चर कर रही थीं और स्क्रॉलव्यू को खुद को संभालने देने के बजाय खुद को संभाल रही थीं।


मैं एक ही मुद्दा है। मेरे लिए समस्या यह है कि DelaysContentTouches को सच करने से, आप एक सेब पेंसिल के साथ कम गुणवत्ता वाले चित्र के साथ समाप्त हो जाएंगे। लेकिन यह एक किनारा मामला है :) ज्यादातर मामलों में यह समस्या को हल करता है
रोमियो

4

सेट contentSizeकी संपत्ति UIScrollviewमें ViewDidLayoutSubviewsविधि। कुछ इस तरह

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()

    scrollView.contentSize = CGSizeMake(view.frame.size.width, view.frame.size.height)
}

3

स्क्रॉल दृश्य क्यों स्क्रॉल नहीं है, इसका विचार यह है कि आपने स्क्रॉल दृश्य के आकार से कम स्क्रॉल करने के लिए सामग्री का आकार निर्धारित किया है, जो गलत है। आपको स्क्रॉल करते समय इसके माध्यम से नेविगेट करने के लिए अपने स्क्रॉल दृश्य के आकार से बड़ा सामग्री आकार सेट करना चाहिए।

जूमिंग के साथ एक ही विचार, आपने जूमिंग के लिए न्यूनतम और अधिकतम मूल्य निर्धारित किया है जो ज़ूमिंग एक्शन के माध्यम से लागू होगा।

स्वागत हे :)


3

एक छोटा सा जोड़, उपरोक्त सभी कारण हैं कि आपके स्क्रॉल दृश्य स्क्रॉल नहीं हो सकते हैं, लेकिन कभी-कभी माइंडलेस रूप से यह विशेष रूप से कारण हो सकता है जब स्क्रॉलव्यू को कोड के माध्यम से जोड़ा जाता है और आईबी नहीं, तो आपने अपने साक्षात्कारों को मूल दृश्य में जोड़ा होगा और नहीं स्क्रॉलव्यू इस सबव्यू को स्क्रॉल नहीं करने का कारण बनता है

और सामग्री का आकार सेट रखें और पैरेंट व्यू फ्रेम (duhh) से बड़ा है !!


3

मैंने इसे अपनी पहली कोशिश में काम किया। ऑटो लेआउट और सब कुछ के साथ, कोई अतिरिक्त कोड नहीं। फिर एक संग्रह दृश्य केला चला गया, रन टाइम पर दुर्घटनाग्रस्त हो गया, मुझे पता नहीं चला कि क्या गलत था, इसलिए मैंने इसे हटा दिया और इसे फिर से बनाया (मैं एक्सकोड 10 बीटा 4 का उपयोग कर रहा हूं। यह एक बग की तरह लगा) और फिर स्क्रॉलिंग चला गया था। संग्रह दृश्य फिर से काम किया, हालांकि!

कई घंटे बाद .. यह वही है जो मेरे लिए तय है। मेरे पास निम्न लेआउट था:

UIView

  • सुरक्षित क्षेत्र
  • स्क्रॉल दृश्य
    • सामग्री का दृश्य

यह सभी बाधाओं में है। सुरक्षित क्षेत्र स्वचालित रूप से सिस्टम द्वारा परिभाषित किया गया है। सबसे खराब स्थिति में स्क्रॉल और सामग्री दृश्यों के लिए सभी बाधाओं को हटा दें और आपके लिए उन्हें IB रीसेट करना / बनाना नहीं है। उन्हें मैन्युअल रूप से बनाएं, यह काम करता है।

  • स्क्रॉल दृश्य के लिए मैंने किया: सुरक्षित क्षेत्र में अनुगामी / शीर्ष संरेखित करें। सुरक्षित क्षेत्र के बराबर चौड़ाई / ऊँचाई
  • सामग्री दृश्य के लिए मैंने किया: अनुरेखण / लीडिंग / टॉप / बॉटम टू सुपरव्यू (स्क्रॉल दृश्य) को संरेखित करें

मूल रूप से अवधारणा सामग्री दृश्य फिटिंग स्क्रॉलव्यू है, जो सुरक्षित क्षेत्र फिटिंग है।

लेकिन इस तरह से यह काम नहीं किया। सामग्री दृश्य ऊँचाई से चूक गई। मैंने कोशिश की सभी मैं कर सकता था और केवल एक ही तरकीब कर रहा था कि कंटेंट व्यू ऊँचाई कंट्रोल-ड्रैगिंग कंटेंट व्यू .. अपने आप में हो । यह एक निश्चित ऊँचाई को परिभाषित करता है, जिसका मान व्यू कंट्रोलर के आकार से निर्धारित किया गया है (जिसे फ़्रीफ़ॉर्म के रूप में परिभाषित किया गया है, जो वास्तविक डिस्प्ले से अधिक लंबा है, जिसमें मेरे सभी साक्षात्कार शामिल हैं) और आखिरकार इसने फिर से काम किया!


आपका स्वागत है! मुझे पता है कि आप कैसा महसूस करते हैं .. ;-)
मिशेल डेल'गता

Thaaaaks, मैंने कई घंटे बिताए और इसने मेरे मुद्दे को हल किया
एंडोनी दा सिल्वा

3

यदि आपको एक संदेश (IOS8 / स्विफ्ट) मिल रहा है जो viewDidLayoutSubviewsमौजूद नहीं है, तो इसके बजाय निम्नलिखित का उपयोग करें

override func viewDidAppear(animated: Bool)

इसने मेरे लिए इसे ठीक कर दिया


2

पहले उल्लेख नहीं किया गया था कि कुछ!

सुनिश्चित करें कि आपका आउटलेट स्क्रॉलव्यू से सही तरीके से जुड़ा हुआ था! इसमें एक भरा हुआ सर्कल होना चाहिए, लेकिन अगर आपने भरा हुआ सर्कल है, तो भी स्क्रॉल दृश्य कनेक्ट नहीं किया जा सकता है - इसलिए डबल चेक करें! सर्कल पर होवर करें और देखें कि क्या वास्तविक स्क्रोलव्यू हाइलाइट हो जाता है! (यह मेरे लिए एक मामला था)

//Connect below well to the scrollView in the storyBoard
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;

2

यदि आपने एक ट्यूटोरियल का अनुसरण किया है, तो उस समय का अधिकांश भाग सही है, लेकिन कई शुरुआती जो नहीं जानते हैं, वह यह है कि स्क्रॉलव्यू सिम्युलेटर के माध्यम से सामान्य रूप से स्क्रॉल नहीं करने जा रहा है। यह केवल स्क्रॉल करने के लिए माना जाता है जब आप माउसपैड पर दबाते हैं और एक साथ स्क्रॉल करते हैं। कई अनुभवी XCode / Swift / Obj-C उपयोगकर्ता ऐसा करने के लिए उपयोग कर रहे हैं और इसलिए उन्हें नहीं पता कि इसे शुरुआती लोगों द्वारा कैसे अनदेखा किया जा सकता है। Ciao :-)

@IBOutlet weak var scrollView: UIScrollView!
override func viewDidLoad() {
    super.viewDidLoad()
    view.addSubview(scrollView)
    // Do any additional setup after the view
}

override func viewWillLayoutSubviews(){
    super.viewWillLayoutSubviews()
    scrollView.contentSize = CGSize(width: 375, height: 800)
}

यह कोड तब तक पूरी तरह से ठीक काम करेगा जब तक कि आप ऊपर बताए गए तरीके से काम करते हैं


1

यदि कोई अन्य समाधान आपके लिए काम नहीं करता है, तो जांच लें कि आपका स्क्रॉल दृश्य वास्तव UIScrollViewमें इंटरफ़ेस बिल्डर में है।

पिछले कुछ दिनों में कुछ बिंदु पर, मेरे UIScrollView अनायास बदल प्रकार एक करने के लिए UIView, भले ही अपने वर्ग कहा UIScrollViewनिरीक्षक में। मैं उपयोग कर रहा हूं Xcode 5.1 (5B130a)

आप या तो एक नया स्क्रॉल दृश्य बना सकते हैं और माप, सेटिंग्स और बाधाओं को पुराने दृश्य से कॉपी कर सकते हैं, या आप फ़ाइल UIScrollViewमें अपना दृश्य मैन्युअल रूप से बदल सकते हैं xib। मैंने एक तुलना की और निम्नलिखित अंतर पाए गए:

मूल:

<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" directionalLockEnabled="YES" bounces="NO" pagingEnabled="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Wsk-WB-LMH">
...
</scrollView>

अनायास बदल जाने के बाद:

<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" customClass="UIScrollView" id="qRn-TP-cXd">
...
</view>

इसलिए मैंने <view>लाइन को अपनी मूल <scrollView>लाइन से बदल दिया ।

मैंने दृश्य के नज़दीकी टैग </view>को भी बदल दिया </scrollView>

आईडी को वर्तमान दृश्य के समान रखना सुनिश्चित करें, इस मामले में: आईडी = "qRn-TP-cXd"।

मुझे ऐप के व्युत्पन्न डेटा को हटाकर Xcode के कैश से xib को फ्लश करना होगा:

  • Xcode->Window->Organizer->Projects, अपने प्रोजेक्ट को Derived डेटा लाइन पर चुनें, हटाएं पर क्लिक करें ...

या अगर किसी डिवाइस का उपयोग कर रहे हैं:

  • Xcode->Window->Organizer->Device, अपना डिवाइस चुनें-> एप्लिकेशन, अपना ऐप चुनें, (-) पर क्लिक करें

अब प्रोजेक्ट को साफ करें, और ऐप को सिम्युलेटर / डिवाइस से हटा दें:

  • Xcode->Product->Clean
  • iOS Simulator/device->pressऔर app->clickइसे निकालने के लिए (X) दबाए रखें

फिर आपको अपने ऐप को बनाने और चलाने में सक्षम होना चाहिए और फिर से कार्यक्षमता को स्क्रॉल करना होगा।

PS मुझे स्क्रॉल दृश्य की सामग्री का आकार सेट करने viewDidLayoutSubviewsया ऑटो लेआउट बंद करने की आवश्यकता नहीं थी , लेकिन YMMV।


1

यदि आपका किसी प्रकार का scrollViewसबव्यू है containerView, तो सुनिश्चित करें कि आपका scrollViewफ्रेम या सीमा के भीतर है containerView। मैं containerView.clipsToBounds = NOअभी भी स्क्रॉल स्क्रीन देखने की अनुमति देता था, लेकिन क्योंकि यह scrollViewसीमा के भीतर नहीं था containerViewस्पर्श घटनाओं का पता नहीं लगाएगा।

उदाहरण के लिए:

containerView.frame = CGRectMake(0, 0, 200, 200);
scrollView.frame = CGRectMake(0, 200, 200, 200);
[containerView addSubview:scrollView];
scrollView.userInteractionEnabled = YES;

आप स्क्रॉलव्यू को देख पाएंगे, लेकिन यह उपयोगकर्ता के इंटरैक्शन प्राप्त नहीं करेगा।


1

निम्नलिखित कोड को viewDidLayoutSubviewsमेरे लिए Autolayout के साथ काम करने में जोड़ना। सभी उत्तरों को आजमाने के बाद:

- (void)viewDidLayoutSubviews
{
    self.activationScrollView.contentSize = CGSizeMake(IPHONE_SCREEN_WIDTH, 620);

}

//set the height of content size as required

1

जोड़ें UIScrollViewDelegateऔर निम्न कोड को viewDidAppearमेरे लिए निर्धारित विधि में जोड़ दें।

@interface testScrollViewController () <UIScrollViewDelegate>

-(void)viewDidAppear:(BOOL)animated {
    self.scrollView.delegate = self;
    self.scrollView.scrollEnabled = YES;
    self.scrollView.contentSize = CGSizeMake(375, 800);
}

1

मेरी समस्या का समाधान इसके द्वारा किया गया:

  1. सामग्री को एक बड़ी ऊँचाई पर स्क्रॉल करें पर सेट करें
  2. लेकिन मुझे भी स्क्रॉल दृश्य के भीतर विचारों पर शीर्ष और / या नीचे की बाधाओं को ठीक करना था, जिसका मतलब था कि स्क्रॉल संकेतक स्क्रीन पर दिखाए गए थे, लेकिन सामग्री स्क्रॉल नहीं हुई थी

एक बार जब मैंने सुरक्षित क्षेत्र और / या पर्यवेक्षण के लिए बाध्य शीर्ष और / या नीचे की बाधाओं को हटा दिया, तो स्क्रॉल दृश्य के अंदर के दृश्य फिर से स्क्रॉल कर सकते हैं और स्क्रीन के नीचे के शीर्ष पर स्थिर नहीं रह सकते हैं!

आशा है कि यह इस विशेष मुद्दे के साथ किसी और को दर्द के घंटों से रोकता है।


1

अभी तक एक और मजेदार मामला:

scrollview.superview.userInteractionEnabled सही होना चाहिए

मैं 2 + hrs बर्बाद कर रहा हूं, यह पता लगाने के लिए कि माता-पिता UIImageView हैं, जो स्वाभाविक रूप से, userInteractionEnabled == झूठा है


0

इस सूत्र में दिए गए उत्तरों के साथ असफल होने के बाद, मैं इस लेख पर समाधान के साथ ठोकर खाई ।

ऑटोलॉयआउट के साथ स्क्रॉलव्यू सेट करने के बारे में दो बातें सहज नहीं हैं:

  1. कंटेंटव्यू और स्क्रोलव्यू के बीच के मार्जिन के रूप में आपके द्वारा सेट की गई बाधाएं कंटेंटव्यू के आकार को प्रभावित नहीं करती हैं। वे वास्तव में हाशिये पर हैं। और इसे काम करने के लिए, कंटेंटव्यू का एक निश्चित आकार होना चाहिए।
  2. निश्चित आकार की चाल यह है कि आप स्क्रॉलव्यू के माता-पिता के बराबर सामग्री की चौड़ाई सेट कर सकते हैं। बस बाईं ओर के पेड़ में दोनों दृश्यों का चयन करें और बराबर चौड़ाई की बाधा जोड़ें।

यह उस लेख का सार है। दृष्टांत सहित पूर्ण विवरण के लिए, इसे देखें।


@PredragManojlovic इससे अधिक सामान्य कैसे हो सकता है? यह एकमात्र तरीका है जिससे मुझे ऑटो-लेआउट का उपयोग करके, ठीक से काम करने के लिए स्क्रॉलव्यू मिल सकता है।
एच। जोन्ग

0

मैंने पाया कि इस AutoLayout मुद्दे के साथ ... अगर मैं सिर्फ कक्षा के बजाय ViewControllerउपयोग करता हूं ... तो बस अपने आप को जोड़ें ... यह काम करता है।UIViewUIScrollViewUIScrollView


0

आईबी में भी मेरा यही मुद्दा था।

स्क्रॉल करने के लिए अग्रणी, अनुगामी, ऊपर और नीचे सेट करने के बाद इसके SuperView पर जाएं। मैंने कंटेनर दृश्य स्क्रॉल करने योग्य बनाने के लिए निम्नलिखित परिवर्तन किए, जो काम किया।

स्क्रॉल दृश्य को केवल क्षैतिज दिशा में स्क्रॉल करने के लिए स्क्रॉल दृश्य के केंद्र = कंटेनर दृश्य के केंद्र के साथ बाधा बनाएं

और इसे स्क्रॉल करने के लिए लंबवत स्क्रॉल करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.