2016-03-03 6 views
6

मेरे पास कुछ TextView एस हैं जो एक-दूसरे के बगल में प्रदर्शित होते हैं। वर्तमान में, मैं स्पर्श पर लहर पाने के लिए android:background="?attr/selectableItemBackground" का उपयोग करता हूं।एक पाठ दृश्य के लिए सीमा के साथ लहरें?

अब, TextView एस पर सीमाएं जोड़ना चाहेंगे जब उन्हें दबाया नहीं जाता है और TextView स्पर्श होने पर लहर होती है। मैं उसको कैसे करू?

उत्तर

10

के आधार पर एक Styling Android blog post:

एक और तरीका है कि हम एक लहर एनीमेशन की सीमा को सीमित कर सकते हैं वास्तव में एक बच्चे

<ripple xmlns:android="http://schemas.android.com/apk/res/android" 
    android:color="?android:colorControlHighlight"> 
    <item> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/white" /> 
      <stroke 
       android:color="@color/card_set_bg_color" 
       android:width="1dp" /> 
     </shape> 
    </item> 
</ripple> 

यहाँ <solid> के रूप में एक आकार drawable को परिभाषित करने के लिए है लहरों को प्रस्तुत करने के लिए <shape> में आवश्यक है। यदि transparent पर सेट किया गया है या छोड़ा गया है, तो लहर प्रस्तुत नहीं करती है। लहर को प्रस्तुत करने के लिए एक ठोस पृष्ठभूमि की जरूरत है। TextView के पास पृष्ठभूमि रंग नहीं है इसलिए हमें <solid> निर्दिष्ट करने की आवश्यकता है।

+1

प्रश्नोत्तरी से उत्तर के लिए बहुत प्रतिभा समाधान, और +1। –

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