2012-06-28 17 views
10

मेरे पास लगभग 20 स्थिर कोशिकाओं के साथ UITableViewController है, इनमें से कुछ कक्षों में UITextField है और कुछ केवल चेकमार्क के साथ चयन करने के लिए हैं। तालिका के बारे में 1.5 विचारों के लायक है ताकि निचले पाठ फ़ील्ड पर स्क्रॉलिंग की आवश्यकता हो।UITableViewController कीबोर्ड दिखाई देने पर स्क्रॉलिंग दृश्य नहीं

जब मैं तालिका के नीचे एक टेक्स्टफील्ड में क्लिक करता हूं तो कीबोर्ड पॉप अप करता है जैसा कि यह होना चाहिए लेकिन यह तब सेल/टेक्स्टफील्ड पर दिखाई देता है।

मैं इंप्रेशन (ऐप्पल दस्तावेज़ों और अन्य जगहों से) के प्रभाव में था कि UITableViewController कक्षा किसी भी अभिविन्यास में कीबोर्ड दिखाई देने पर स्वचालित रूप से दृश्य को स्क्रॉल करता है और तालिकादृश्य को बदल देता है ताकि सेल दिखाई दे, यह नहीं हो रहा है हालांकि।

आईओएस 5.1, आईपैड पोर्ट्रेट।

+1

कुंजीपटल दिखाई देने पर UITableviewcell स्क्रॉल करने के लिए संभावित डुप्लिकेट कैसे करें?] (Http://stackoverflow.com/questions/8338737/how-to-scroll-the-uitableviewcell-scroll-up-when-the -किबोर्ड-प्रतीत होता है) – rishi

+1

कोई डुप्ली आईएमओ नहीं है, यह स्टेटिक सेल टीवीसी के –

+0

से संबंधित है लिंक जिस ऋषि ने वास्तव में मेरी स्थिर तालिका सामग्री के लिए काम किया था। लेकिन जैसे मैंने कहा, हालांकि, यह प्रोग्रामिंग रूप से स्क्रॉलिंग को प्रबंधित करने की आवश्यकता के बिना UITableViewController का उपयोग करते समय स्वचालित रूप से काम करने के लिए था। – GeoffCoope

उत्तर

69

यकीन है कि अगर आप viewWillAppear अधिभावी कर रहे हैं कि आप

[super viewWillAppear:animated]; 

फोन तुम नहीं, स्क्रॉल देखें ठीक तरह से स्क्रॉल नहीं होंगे रहे हैं तो सुनिश्चित करें।

स्विफ्ट

super.viewWillAppear(animated) 
+0

अभी तक उस विधि का उपयोग नहीं कर रहा है। धन्यवाद वैसे भी – GeoffCoope

+1

यह मेरे लिए काम करता है (और मुझे वैसे भी यह कॉल करना चाहिए था)। धन्यवाद। – Snips

+2

ओह! बहुत बहुत धन्यवाद, मैंने सोचा कि मैं इसे फिर से स्वचालित रूप से काम नहीं करूँगा) – DanSkeel

1

मैं इस मुद्दे को अपने आप में फंस गयी। मैं तो बस मेरे विचार नियंत्रक एक UIViewController से एक UITableViewController के अलावा [super viewWillAppear:animated]; कॉल जोड़ने के लिए परिवर्तित किया है, तो आप इन पंक्तियों को दूर करने की आवश्यकता होगी:

[self.tableView setDataSource:self]; [self.tableView setDelegate:self];

वे अब जरूरत और setDelegate कीबोर्ड स्क्रॉल के साथ हस्तक्षेप के रूप में व्यवहार।

4

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

आशा है कि किसी के लिए समय और तनाव बचाएगा।

+0

मेरे पास एक समान समस्या थी जहां मैं कंटेनर व्यू का उपयोग कर रहा हूं। – RyanJM

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