2013-05-07 13 views
7

का उपयोग कर चयनित टैबबार चयनित छवि को कैसे बदलें मैंने स्टोरीबोर्ड का उपयोग करके एप्लिकेशन बनाया है और 5 टैब के साथ TabBarController है। प्रत्येक टैब में टैबिकॉन और tab title है। जब कोई टैब चुना जाता है तो मैं tabbar आइकन बदलना चाहता हूं। मैं storyboard का उपयोग कैसे कर सकता हूं? रीति केस्टोरीबोर्ड

UITabBarItem *tabBarItem = [[tabbar items] objectAtIndex:0]; 
[tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"img_hover.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"img.png"]]; 

परिवर्तन पहचानकर्ता और छवि enter image description here

+0

Xcode 6 में आप आप टैब बार आइटम के लिए गुण निरीक्षक में नए "चयनित छवि" फ़ील्ड के साथ ऐसा कर सकते हैं लगता होगा, लेकिन किसी कारण जब चयनित है कि एक खाली छवि में जो परिणाम, के रूप में के लिए वैसे भी एक्सकोड 6.1.1 का। हालांकि, यहां एक वर्कअराउंड विस्तृत है: http://stackoverflow.com/a/26802597/650558 –

उत्तर

-2

कोड नीचे चयन में tabbar छवि बदल जाएगा।

लिखने

UITabBarItem *tabBarItem0 = [self.tabBar.items objectAtIndex:0]; 
    [tabBarItem0 setFinishedSelectedImage:[UIImage imageNamed:@"selectedimage.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"image.png"]]; 

सभी tabbar मदों के लिए और कहानी बोर्ड में MyTabBarController को tabBar नियंत्रक सेट इस सेट की तरह: -

उपवर्ग UITabBarControllerMyTabBarController

से अधिक viewDid लोड लिखें। यह ठीक काम कर रहा है।

+0

मेरे पास 5 टैब हैं जहां मुझे यह कोड लिखना चाहिए। प्रत्येक दृश्य नियंत्रक में? – AMohan

+0

'- (शून्य) viewDidLoad' – Ashini

1

मुझे मिल गया है जोड़ें:

12

- (void)setFinishedSelectedImage:withFinishedUnselectedImage: बहिष्कृत किया गया है।

var settingsItem = self.tabBar.items?[0] as UITabBarItem 
settingsItem.selectedImage = UIImage(named: "home-selected") 

ध्यान दें कि यह कोड अपने UITabBarController उपवर्ग के viewDidLoad ओवरराइड में अंतर्गत आता है: आप स्टोरीबोर्ड का उपयोग कर रहे हैं, यह रूप में सरल रूप में

UITabBarItem *tabBarItem0 = [self.tabBar.items objectAtIndex:0]; 
UIImage* selectedImage = [[UIImage imageNamed:@"settings-active"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; 
tabBarItem0.selectedImage = selectedImage; 

संपादित

स्विफ्ट में है।

1

अब आप आसानी से स्टोरीबोर्ड में ऐसा कर सकते हैं। आपके पास प्रत्येक टैबव्यू कंट्रोलर पर, इसमें पदानुक्रम में एक टैब बार आइटम होना चाहिए (थोड़ा नीला सितारा जैसा दिखता है), इस पर क्लिक करें और दाईं ओर की सेटिंग्स नीचे दी गई छवि की तरह दिखनी चाहिए। टैब बार शीर्षक & छवि यहां बदला जा सकता है।

enter image description here