एक नियंत्रक नेविगेशन बार में UISegmentedControl
जोड़ता है। सेगमेंट नियंत्रण को viewDidLoad
नियंत्रक की विधि में नेविगेशन बार में जोड़ा जाता है लेकिन वास्तविक खंड viewDidLoad
के बाद गतिशील रूप से बनाए जाते हैं।गतिशील रूप से निर्मित एक सेगमेंट नियंत्रण के नेविगेशन बार में स्वचालित आकार बदलना
दृश्य दिखाए जाने पर मुझे सेगमेंट को स्वचालित रूप से आकार में नहीं बदला जा सकता है। वे सब squished हैं, like in this post, हालांकि संकल्प यहां लागू नहीं होता है। यदि खंडित नियंत्रण नेविगेशन बार के सही आइटम (कोड की गतिशील प्रकृति को तोड़ने) से पहले जोड़ा गया है, तो वे स्वचालित रूप से आकार बदलते हैं और दृश्य दिखाए जाने पर ठीक लगते हैं।
यहां मेरे कोड का एक संक्षिप्त संस्करण नीचे दिया गया है। मैं क्या खो रहा हूँ?
@implementation MyController
- (void)viewDidLoad {
// segmentedControl is an ivar
segmentedControl = [UISegmentedControl alloc] initWithItems:[NSArray array]];
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithCustomView:segmentedControl] autorelease];
self.navigationController.navigationBar.topItem.rightBarButtonItem = barButtonItem;
}
- (void)someMethodCalledAfterViewDidLoad {
[segmentedControl insertSegmentWithTitle:@"a title"
atIndex:0
animated:NO];
}
@end
हाय @ क्रिस्टस्टज़ोफ, मैंने कोशिश की लेकिन यह दुख की बात नहीं थी। – ptrico
हमारे लिए काम किया, धन्यवाद !!! –