2009-05-02 11 views
5

मैं उत्सुक हूं, क्या किसी भी तरह से कोर एनीमेशन को UIBarButtonItem का "फीका आउट" देने के लिए संभव है? मेरे पास एक टेबल दृश्य है जिसे मैं दो अलग-अलग डेटा स्रोतों के साथ प्रस्तुत करता हूं। एक बार एक विशेष डेटा स्रोत ट्रिगर हो जाने पर, मैं वर्तमान UIToolBar विकल्पों को फीका करना चाहता हूं और नए में फीका करना चाहता हूं।क्या UIBarButtonItem को फीका करने के लिए कोर एनीमेशन का उपयोग करना संभव है?

मुझे सही दिशा में इंगित करने के लिए धन्यवाद।

उत्तर

7

यदि आप वास्तव में यूआईटीूलबार का उपयोग कर रहे हैं (निचला मामला "बी" नोट करें) और यूआईएनविगेशनबार नहीं है, तो बटन बदलने के लिए एक बहुत ही आसान तरीका है और संक्रमण को स्वचालित रूप से कोर एनीमेशन के बिना फेंक दिया गया है।

यदि आप इंटरफ़ेस बिल्डर का उपयोग कर रहे हैं, तो आपको अपने कोड में टूलबार के संदर्भ की आवश्यकता होगी। एक IBOutlet प्रॉपर्टी बनाएं और आईबी में इसे करने के लिए उपकरण पट्टी लिंक:

@property (nonatomic, retain) IBOutlet UIToolbar *toolbar; 

यह आपको self.toolbar रूप UIToolbar संदर्भित करने के लिए अनुमति देगा। इस प्रकार विधि: जबकि googling

UIBarButtonItem *newItem = [[[UIBarButtonItem alloc] 
           initWithBarButtonSystemItem:UIBarButtonSystemItemDone 
           target:self 
           action:@selector(handleTap:)] autorelease]; 
NSArray *newButtons = [NSArray arrayWithObjects:newItem, nil]; 
[self.toolbar setItems:newButtons animated:YES]; 
+2

इस पोस्ट पाया - टिप्पणी की: [: एनिमेटेड UIToolbar setItems] - वहाँ एक '[आत्म फिर, अपनी नई बटन बनाने और उन्हें एक NSArray करने के लिए जोड़ सकते हैं और करने के लिए इस गुजरती हैं। नेविगेशन Item setLeftBarButtonItem: MyBarButton एनिमेटेड: हाँ] 'विधि जिसका मैंने इस उद्देश्य के लिए उपयोग किया था। धन्यवाद! – taber

2

मुझे विश्वास नहीं है कि UIBarButtonItem पर अल्फा को नियंत्रित करने का कोई तरीका है, लेकिन UIToolbar क्लास में पहले से ही एक तरीका है जो आप करने का प्रयास कर रहे हैं: -setItems: एनिमेटेड:।

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