2012-07-10 11 views
6

क्या UIBarButtonItem अनन्य स्पर्श करने का कोई तरीका है? फिलहाल आप एक ही समय में एकाधिक का चयन कर सकते हैं और यह मेरे एप्लिकेशन को क्रैश कर रहा है।UIBarButtonItem, विशेष स्पर्श सेट करें

+0

तो क्या आपको इसके लिए समाधान मिला? – learner2010

उत्तर

9

नेविबार को उपclassing से थोड़ा आसान तरीका लेकिन एक ही विचार;

for(UIView *temp in self.navigationController.navigationBar.subviews) 
{ 
    [temp setExclusiveTouch:YES]; 
} 

इस रखो आप अपने बार बटन आइटम जोड़ने के तुरंत बाद।

6

मैंने इस समस्या को UINavigationBar subclassing और लेआउट सबव्यूविंग विधि ओवरराइड करके प्रबंधित किया। कुछ इस तरह:

- (void)layoutSubviews { 
    [super layoutSubviews]; 
    for (UIView *view in self.subviews) { 
     view.exclusiveTouch = YES; 
    } 
} 
-2

यह UIBarButtonItem लिए काम नहीं करता initWithTitle

+0

क्या काम नहीं करता है? क्या यह किसी और की पोस्ट पर टिप्पणी नहीं होनी चाहिए? –

0

का उपयोग कर आईओएस 7 में यह काम नहीं कर रहा था बनाया। मैंने इसे ठीक करने का प्रयास करने के लिए इस विधि का उपयोग किया है।

for(UIView *temp in self.navigationController.navigationBar.subviews){ 
    [temp setExclusiveTouch:YES]; 
    for(UIView *temp2 in temp.subviews){ 
     [temp2 setExclusiveTouch:YES]; 
    } 
} 
3

अतीत को डराकर मैं क्षमा चाहता हूं। मैंने इसमें ठोकर खाई और उम्मीद की कि सबव्यू के माध्यम से लूपिंग से बेहतर तरीका था।

मैंने पाया कि निम्नलिखित UIBarButtonItems विशेष बनाता है:

[self.navigationController.navigationBar setExclusiveTouch:YES]; 

iOS7 किए हों अनन्य स्पर्श विरासत में मिला।

+1

यह मेरे लिए काम नहीं करता है। मैं आईओएस 7 पर चल रहा हूं। – Qiusheng

+0

यह आईओएस 8 में भी काम नहीं करता है। –

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