2011-09-14 10 views
5

से UITextView के ऊर्ध्वाधर संरेखित स्थापित करने के लिए मैं अपने आवेदन डिजाइन में एक समस्या है। मैं अपने UITextView के लंबवत संरेखण सेट को सेट करना चाहता हूं। कृपया मुझे इंटरफ़ेस बिल्डर से uitextview के लंबवत संरेखण को सेट करने में सहायता करें।कैसे इंटरफ़ेस बिल्डर

+0

लंबवत संरेखण से आपका क्या मतलब है। क्या आप चाहते हैं कि टेक्स्ट फ़ील्ड में आपका टेक्स्ट केंद्र में आना चाहिए। – Gypsa

+0

मैं TextView –

+0

के बीच में अपने पाठ दिखाना चाहते हैं और यह भी वहाँ UITextView में एक गद्दी है, मैं निकालना चाहते हैं यह –

उत्तर

7

इस contentSize प्रॉपर्टी में परिवर्तन को देख और फिर contentOffset की स्थापना द्वारा काम करने के लिए मिला है।

- (void)viewDidLoad{ 
    [super viewDidLoad]; 
    [myTextView addObserver:self forKeyPath:@"contentSize" options:(NSKeyValueObservingOptionNew) context:nil]; 
} 

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { 
    UITextView *myView = object; 

    CGFloat offSet = ([myView bounds].size.height - [myView contentSize].height * [myView zoomScale])/2.0; 
    offSet = offSet < 0.0 ? 0.0 : offSet; 
    [myView setContentOffset:CGPointMake(0, -offSet) animated:NO]; 
} 
+1

यह आईओएस 6 के लिए अच्छा काम करता है, लेकिन आईओएस 5 के लिए काम नहीं करता प्रतीत होता है। UITextView अलग-अलग व्यवहार करता प्रतीत होता है। :( – Daren

+0

iOS8 पर अच्छी तरह से काम कर रहा है लेकिन यह भी पर्यवेक्षक को दूर करने के बाद संरेखण किया जाता है की जरूरत है इस लाइन 'observeValueForKeyPath' विधि की अंतिम पंक्ति के रूप में:' [टीवी removeObserver: स्वयं forKeyPath: @ "contentSize"];। ' –

-1
*yourtextviewname*.textAlignment=UITextAlignmentCenter; 

आप इसे इंटरफ़ेस बिल्डर द्वारा कर सकते हैं। टेक्स्ट फ़ील्ड के खुले गुण और केंद्र में टेक्स्ट संरेखण सेट करें।

+2

क्षमा करें, मैं UITextView का उपयोग कर रहा मेरा मतलब है और ऊर्ध्वाधर संरेखित जैसे शीर्ष सेट करना चाहते हैं नहीं है, मध्य, तल। आशा है कि यह समझ में आता है। –

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