2011-05-07 6 views
5

का उपयोग कर प्रोग्राम रूप से एक टैब दृश्य कैसे बना सकता हूं एक आईफोन ऐप के लिए मैं प्रोग्राम रूप से एक टैब व्यू कैसे बना सकता हूं? क्या कोई मुझे कुछ अच्छे ट्यूटोरियल लिंक या उदाहरण प्रदान करके मेरी मदद कर सकता है?मैं उद्देश्य-सी

उत्तर

9

यह UITabBarController के माध्यम से एक UITabBar बनाने के लिए काफी आसान है। निम्नलिखित उदाहरण को आपके ऐपडिलेगेट क्लास में काम करना चाहिए।

अनुप्रयोग प्रतिनिधि इंटरफ़ेस

सबसे पहले, इंटरफ़ेस के भीतर, हम अपने UITabBarController को परिभाषित करेंगे।

UITabBarController *tabBarController; 

अनुप्रयोग प्रतिनिधि कार्यान्वयन

फिर, कार्यान्वयन फ़ाइल के application:didFinishLaunchingWithOptions: विधि के भीतर, हम तो हमारे टैब बार नियंत्रक आरंभ करेंगे।

// Initialise our tab bar controller 
UITabBarController *tabBarController = [[UITabBarController alloc] init]; 

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

// Create your various view controllers 
UIViewController *testVC = [[TestViewController alloc] init]; 
UIViewController *otherVC = [[OtherViewController alloc] init]; 
UIViewController *configVC = [[ConfigViewController alloc] init]; 

setViewControllers के रूप में: एनिमेटेड: विधि दृश्य नियंत्रकों की एक सरणी की आवश्यकता है, हम एक सरणी के लिए हमारे विचार नियंत्रकों जोड़ देंगे और फिर उन्हें छोड़ दें। (NSArray के रूप में उन्हें बनी रहेगी।)

// Put them in an array 
NSArray *viewControllers = [NSArray arrayWithObjects:testVC, otherVC, configVC, nil]; 
[testVC release]; 
[otherVC release]; 
[configVC release]; 

तब बस अपने दृश्य नियंत्रकों की सरणी के साथ UITabBarController प्रदान करते हैं और हमारी खिड़की में जोड़ें।

// Attach them to the tab bar controller 
[tabBarController setViewControllers:viewControllers animated:NO]; 

// Put the tabBarController's view on the window. 
[window addSubview:[tabBarController view]];  

अंत में, सुनिश्चित करें कि आप अपने dealloc विधि के भीतर [tabBarController release]; फोन बनाते हैं।

// Create our tab bar item 
UITabBarItem *tabBarItem = [self tabBarItem]; 
UIImage *tabBarImage = [UIImage imageNamed:@"YOUR_IMAGE_NAME.png"]; 
[tabBarItem setImage:tabBarImage]; 
[tabBarItem setTitle:@"YOUR TITLE"]; 
+0

जब मैं अपना खुद का टैबबारकंट्रोलर प्रोग्रामेटिक रूप से बनाता हूं, तो मैं हमेशा प्रत्येक टैब के लिए एक नेविगेशन नियंत्रक बनाता हूं और प्रत्येक नेविगेशन नियंत्रक रूटव्यू कंट्रोलर के साथ प्रारंभ होता है। मुझे लगता है कि आपके उदाहरण में नेविगेशन स्टैक बनाना संभव नहीं है क्योंकि आपके पास नेविगेशन नियंत्रक नहीं है, लेकिन मैंने इसे इस तरह कोडिंग करने की कोशिश नहीं की। –

+0

@Wolfgang मुझे लगता है कि यह इस बात पर निर्भर करता है कि आप नेविगेशन स्टैक पर पुश/पॉप आइटम करना चाहते हैं या नहीं। (मेरा उदाहरण एक बहुत ही कम अंत है "बस मूल बातें" दृष्टिकोण।) –

+0

thnx बहुत वास्तव में यह काम करता है – Kiran

0

यह हम कैसे tabbar बनाने के लिए है प्रोग्राम के

UINavigationController *BandNavigationController3; 
AudienceSettingsViewController *audienceSettingsViewView =[[AudienceSettingsViewController alloc]initWithNibName:@"AudienceSettingsViewController" bundle:nil]; 
BandNavigationController3 = [[UINavigationController alloc]initWithRootViewController:audienceSettingsViewView]; 
BandNavigationController3.tabBarItem.title = @"Settings"; 
BandNavigationController3.tabBarItem.image = [UIImage imageNamed:@"settings.png"]; 

[BandNavigationController3.tabBarItem initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:4]; 
BandNavigationController3.navigationBar.hidden = YES; 

[bandTabBarArray addObject:BandNavigationController3]; 
[BandNavigationController3 release]; 
[audienceSettingsViewView release]; 

[tabBarController setViewControllers:bandTabBarArray]; 
[bandTabBarArray release]; 
+0

-1 ए:

देखें नियंत्रक कार्यान्वयन

आपके विचार नियंत्रकों में से प्रत्येक के अंदर, आप भी इस प्रकार init विधि के भीतर शीर्षक और टैब के लिए आइकन निर्धारित करना चाहते हैं बिना किसी स्पष्टीकरण के बुरी तरह से स्वरूपित प्रतिलिपि और पेस्ट नौकरी। –