2010-05-10 9 views
5

मैं कोड में बाद में फिर एक UIButtonटैग संपत्ति IPhone

UIButton *randomButton = [[UIButton buttonWithType:UIButtonTypeRoundedRect ]];  
    randomButton.frame = CGRectMake(205, 145, 90, 22); // size and position of button 
    [randomButton setTitle:@"Random" forState:UIControlStateNormal]; 
    randomButton.backgroundColor = [UIColor clearColor]; 
    randomButton.adjustsImageWhenHighlighted = YES; 
    [randomButton addTarget:self action:@selector(getrandom:) 
      forControlEvents:UIControlEventTouchUpInside]; 
    randomButton.reversesTitleShadowWhenHighlighted=YES; 
    randomButton.toggleButton 

    [self.view addSubview:randomButton]; 

    randomButton.tag=333; 

तक पहुँचने के लिए टैग संपत्ति का उपयोग कर एक छोटी सी समस्या हो रही है मैं निम्नलिखित तरीके से बटन पर प्राप्त करने की कोशिश के साथ एक UIButton पर हो रही है जो मुझे कह

असंगत ऑब्जेक्टिव-सी प्रकार आरंभ 'struct UIView *' एक त्रुटि देता है, की उम्मीद 'struct UIButton *'

UIButton *random = [self.view viewWithTag:333]; 
    random.highlighted=NO; 

उत्तर

23

प्रयास करें:

UIButton *random = (UIButton *)[self.view viewWithTag:333]; 

इसके अलावा, तुम क्यों टैग बताए जाते हैं के बाद आप बटन जारी किया है?

+0

धन्यवाद, आपका कोड मेरी चेतावनी से छुटकारा पा लिया है। पूरी बरकरार/रिलीज चीज वहां नहीं होनी चाहिए। भले ही मैं बटन पर सफलतापूर्वक प्राप्त कर रहा हूं, फिर भी मैं अपने राज्य को "हाइलाइट" में बदल नहीं सकता। मैं इसे UIControlEventTouchUpInside ईवेंट के लिए हैंडलर में करने का प्रयास करता हूं। असल में मेरे पास 3 बटन हैं जिन्हें मैं टॉगल प्रभाव को लागू करने की कोशिश कर रहा हूं। एक समय में केवल एक बटन चयनित होता है – dubbeat