2014-06-17 11 views
5

में सिग्नलिंग नहीं कर रहा है मेरे पास UICollectionViewCells बटन हैं। किसी कारण से, जब कोई बटन UICollectionViewCell के अंदर होता है तो मेरा सिग्नल आग लगने से इंकार कर देता है। सामान्य addTarget:action:forControlEvents: पर स्विच करना काम करेगा, लेकिन आरएसी सिग्नल नहीं। मैंने यह 2 अलग-अलग संग्रह दृश्यों में और 2 अलग-अलग कस्टम संग्रह कक्षों में किया है।rac_signalForControlEvents UICollectionViewCell

सभी मैं कर रहा हूँ है:

[[cell.button rac_signalForControlEvents:UIControlEventTouchUpInside] subscribeNext:^(id x) { 
     // code to be executed here, which doesn't happen 
}]; 

मैं क्या याद आ रही है?

+0

क्या आप 'तालिका दृश्य में' rac_signal' सेट कर रहे हैं: cellForRow: atIndexPath' या सेल के 'init' में? –

+0

मेरे पास एक कस्टम सेटअप विधि है जिसे 'संग्रह दृश्य: cellForItemAtIndexPath:' के दौरान बुलाया जाता है। तो हाँ, बटन वहां हैं। – MishieMoo

+1

यह एक प्रतिक्रियाशील कोको-विशिष्ट समस्या की तरह नहीं लगता है। क्या आप अपने प्रश्न में अपने कस्टम सेटअप विधि के किसी भी प्रासंगिक भाग शामिल कर सकते हैं? – erikprice

उत्तर

1

कोशिश:

[[[cell.button rac_signalForControlEvents:UIControlEventTouchUpInside] 
    takeUntil:cell.rac_prepareForReuseSignal] 
    subscribeNext:^(id x) { 
     // code to be executed here, which doesn't happen 
    }]; 
+0

यह सुनिश्चित करेगा कि एक ही सेल एक से अधिक बार सदस्यता नहीं लेता है, जो किसी के सामने आने वाले विपरीत मुद्दे का कारण होगा। –

0

मैं टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है तो मैं बस यहाँ टिप्पणी करेंगे। ऐसा लगता है कि बटन उदाहरण के साथ कुछ गड़बड़ है जो सिग्नल को आग नहीं पहुंचा रही है। आपके बटन तत्काल कैसे हैं और tableView:cellForRow:atIndexPath में आप सिग्नल की सदस्यता ले रहे हैं।

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