2012-06-17 14 views
5

मैं अपने बटन (छवि दृश्य) के क्लिक करने योग्य क्षेत्र को बढ़ाना चाहता हूं। लेकिन मैं नहीं चाहता कि यह दृष्टि से परिलक्षित हो। ऐसा लगता है कि बटन छोटा है (कोई मार्जिन, पैडिंग इत्यादि) लेकिन क्लिक करने योग्य क्षेत्र बड़ा है।लेआउट बदलने के बिना क्लिक करने योग्य क्षेत्र को बढ़ाने के लिए बड़ा पारदर्शी ओवरले जोड़ें

enter image description here

केवल एक चीज के बारे में मैं एक RelativeLayout में मेरे पूरे लेआउट डाल दिया है लगता है और एक दूसरे "परत" के लिए प्रोग्राम के रूप में ओवरले जोड़ सकते हैं। गणित के साथ मार्जिन बाएं और मार्जिन शीर्ष की गणना करें।

क्या कोई बेहतर तरीका है?

मैं पहले से ही यहाँ देखा Expand clickable area of an ImageView by using padding?

या यहाँ Making a button easier to click

और कुछ अन्य लोगों लेकिन वे हमेशा छवि के लिए गद्दी या पारदर्शी क्षेत्रों को जोड़ने के लेआउट को बदलने, मैं ऐसा नहीं करना चाहता।

उत्तर

4

उपयोग एक TouchDelegate, इन ब्लॉग पोस्ट में बताया गया है:

सार है कि आप एक TouchDelegate वस्तु को परिभाषित करने और करने के लिए इसे संलग्न कर सकते हैं है एक दृश्य प्रभाव के बिना, अपने स्पर्श क्षेत्र को बढ़ाने के लिए एक विजेट।

+1

यह लगभग है, लेकिन बिल्कुल नहीं जो मैं ढूंढ रहा हूं। अंतर यह है कि क्षेत्र अभिभावक दृश्य की सीमा तक ही सीमित है, और मैं ऐसा कुछ ढूंढ रहा हूं जो इसके लिए सीमित नहीं है। लेकिन मैं इसका उपयोग करूंगा, इसे कार्यान्वित करना आसान है और मेरे विचारों की "स्पर्शशीलता" में काफी सुधार होगा। मुझे लगता है अन्यथा मुझे इसे प्रोग्रामेटिक रूप से कार्यान्वित करना है और यह इस मामले में इसके लायक नहीं है। – Ixx

+0

@CommonsWare वह दूसरा लिंक अमान्य है। –

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