2012-01-16 5 views
5

मेरे पास एक तत्व है जिसे UIButton की तरह व्यवहार करने की आवश्यकता है लेकिन इसमें कई (3) पाठ लेबल एक ही बार में दिखाई देते हैं और एक ही बाउंडिंग बॉक्स में एकाधिक UIImages हैं। यह वास्तव में विभिन्न अन्य UIViews और लेबलों के समूह के साथ एक दृश्य है, जिन्हें एक बटन की तरह देखने और कार्य करने की आवश्यकता है, लेकिन मानक UIButton की तुलना में इन तत्वों के अधिक कस्टम प्लेसमेंट के साथ।उपclass UIButton या UIControl से विरासत?

क्या यह पूरा करने के लिए यूआईबटन से उत्तराधिकारी होना बेहतर है या यूआईसींट्रोल को प्राप्त करने वाला व्यक्ति है?

जब तत्व टैप किया जाता है, तो मैं सभी हाइलाइटिंग प्रभावों की नकल करना चाहता हूं (यदि यह UILabel है, तो हाइलाइट टेक्स्ट रंग आदि दिखाएं)।

उत्तर

2

जब तक इससे कोई फर्क नहीं पड़ता कि आपकी बटन सामग्री का कौन सा हिस्सा अपने कार्यों को सक्रिय करने के लिए टैप हो जाता है, तो आप यूआईबेल, यूआईएममेज व्यू के साथ यूआईबटन लिख सकते हैं।

आप आसानी से यूआईवीव से उत्तराधिकारी हो सकते हैं, उपर्युक्त सभी को स्थानांतरित कर सकते हैं और अपनी पारदर्शी UIButton को अपनी आवश्यक घटनाओं को प्राप्त करने के लिए सबकुछ के ऊपर रख सकते हैं (स्वयं को उस बटन के लिए लक्ष्य के रूप में सेट करना और चयन के बारे में सूचित करने के लिए कुछ प्रतिनिधि को लागू करना) ।

+0

मुझे यकीन है कि बच्चे के तत्वों सभी सही प्रकाश डाला रंगों को प्रदर्शित जब नल घटना में आता है बनाने की जरूरत है। –

+0

आप अपने UIButton 'UIControlEventTouchDown' और' UIControlEventTouchUpInside' पर सूचित करने के लिए पूछ सकते पता करने के लिए जब आप पर प्रकाश डाला और में इसे संभाल चाहिए पहर। –

+6

"अपने पारदर्शी UIButton को रखें" पर यह एक भयानक दृष्टिकोण है क्योंकि अब आपको बॉक्स से एक्सेसिबिलिटी नहीं मिलती है। और शायद आप इसे ठीक करने पर भी विचार नहीं करेंगे। इस प्रभाव को पाने के लिए अन्य चीजों के शीर्ष पर कभी भी ओवरले बटन न करें। – Daniel