IOS SDK के साथ:
मैं एक है UIView
के साथ UITextField
कि कीबोर्ड सामने लाने के। मुझे यह करने में सक्षम होना चाहिए:
UIScrollView
कीबोर्ड के ऊपर एक बार अन्य टेक्स्ट फ़ील्ड देखने के लिए सामग्री की स्क्रॉलिंग की अनुमति देंस्वचालित रूप से "कूद" (ऊपर स्क्रॉल करके) या छोटा करना
मुझे पता है कि मैं एक की जरूरत है UIScrollView
। मैंने अपनी कक्षा बदलने की कोशिश की UIView
है UIScrollView
लेकिन मैं अभी भी टेक्स्टबॉक्स को ऊपर या नीचे स्क्रॉल करने में असमर्थ हूं।
क्या मुझे ए UIView
और ए दोनों की आवश्यकता है UIScrollView
? क्या एक दूसरे के अंदर जाता है?
सक्रिय पाठ फ़ील्ड पर स्वचालित रूप से स्क्रॉल करने के लिए क्या लागू होना चाहिए?
आदर्श रूप में जितना संभव हो उतना घटकों का सेटअप इंटरफ़ेस बिल्डर में किया जाएगा। मुझे केवल उसी चीज़ के लिए कोड लिखना है जो उसे चाहिए।
नोट: UIView
(या UIScrollView
) जो मैं काम कर रहा हूं, वह एक टैब्बर ( UITabBar
) द्वारा लाया गया है , जिसे सामान्य रूप से कार्य करने की आवश्यकता है।
संपादित करें: मैं कीबोर्ड के ऊपर आने पर सिर्फ स्क्रॉल बार जोड़ रहा हूं। भले ही इसकी आवश्यकता नहीं है, मुझे लगता है कि यह एक बेहतर इंटरफ़ेस प्रदान करता है क्योंकि तब उपयोगकर्ता टेक्स्टबॉक्स को स्क्रॉल और बदल सकता है, उदाहरण के लिए।
मुझे यह काम कर रहा है जहां मैं UIScrollView
कीबोर्ड के ऊपर और नीचे जाने के फ्रेम आकार को बदलता हूं । मैं बस का उपयोग कर रहा हूँ:
-(void)textFieldDidBeginEditing:(UITextField *)textField {
//Keyboard becomes visible
scrollView.frame = CGRectMake(scrollView.frame.origin.x,
scrollView.frame.origin.y,
scrollView.frame.size.width,
scrollView.frame.size.height - 215 + 50); //resize
}
-(void)textFieldDidEndEditing:(UITextField *)textField {
//keyboard will hide
scrollView.frame = CGRectMake(scrollView.frame.origin.x,
scrollView.frame.origin.y,
scrollView.frame.size.width,
scrollView.frame.size.height + 215 - 50); //resize
}
हालाँकि, यह स्वचालित रूप से "ले जाने" या दिखाई देने वाले क्षेत्र में निचले टेक्स्ट फ़ील्ड को केंद्र नहीं करता है, जो कि मैं वास्तव में पसंद करूंगा।