2011-06-02 15 views
16

के साथ काम नहीं कर रहा है मैं लेआउट और छवि दृश्य के लिए चयनकर्ता का उपयोग करना चाहता हूं .. लेकिन यह मेरे लिए काम नहीं कर रहा है। जब मैंने छवि दृश्य को छविबटन या बटन में बदल दिया, तो यह ठीक काम करता है। किसी भी मदद बहुत सराहना की जाएगी .. अग्रिम धन्यवाद ..

यहाँ xmls मैं प्रयोग किया जाता है ..चयनकर्ता लेआउट और छवि दृश्य

<?xml version="1.0" encoding="utf-8"?> 
<selector 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!-- When selected, use grey --> 
    <item 
     android:state_pressed="true" 
     android:drawable="@drawable/bg" 
     /> 
    <!--<item 

     android:drawable="@drawable/bg" 
     android:state_focused="true"/> 
    When not selected, use white--> 

    <item 
     android:drawable="@drawable/bg_01" /> 
</selector> 

-> The layout xml : 
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:orientation="vertical" 
    android:layout_height="fill_parent"> 
    <ImageButton 
     android:layout_width="100dp" 
     android:layout_height="50dp" 
     android:text="layout tester" 
     android:textColor="#000000" 
     android:textStyle="bold" 
     android:paddingTop="10dp" 
     android:src="@drawable/testselector" 
     android:layout_gravity="center_horizontal" /> 
    </LinearLayout> 
+0

तो आपकी सटीक समस्या क्या है ...? –

+0

मुझे लगता है कि लेआउट चयनकर्ता का समर्थन नहीं करता है (मुझे यकीन नहीं है)। संपत्ति का बेहतर प्रयास करें। आप चयनकर्ता के लिए क्यों जा रहे हैं? – David

+0

अगर कोई पूर्ण समाधान प्राप्त करना चाहता है, तो इस भंडार की जांच करें: https://github.com/shamanland/AndroidLayoutSelector कस्टम क्लिक करने योग्य/चेक करने योग्य '' 'LinearLayout'''' 'टॉगल बटन '' –

उत्तर

59

मैं अभी इस समस्या में भाग गया। क्लिक करने योग्य आपको लाइनरलाइट सेट करना होगा। आप

android:clickable="true" 

साथ या कोड में XML में यह कर सकते हैं या तो साथ

yourLinearLayout.setClickable(true); 
+1

बहुत बढ़िया है :) मुझे यह समस्या परेशान कर रही थी :) – Warpzit

+0

बहुत बढ़िया! आपको बहुत - बहुत धन्यवाद! –

+0

ग्रेट !!! बहुत बहुत धन्यवाद! :) –

3

कोशिश इस

<selector 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_focused="true" 
      android:state_pressed="false" 
      android:drawable="@drawable/lastread_ok" /> 
    <item android:state_focused="true" 
      android:state_pressed="true" 
      android:drawable="@drawable/lastread_ok" /> 
    <item android:state_focused="false" 
      android:state_pressed="true" 
     android:drawable="@drawable/lastread_ok_selected" /> 
    <item android:drawable="@drawable/lastread_ok" /> 
</selector> 

आप lastread_ok & एल के बजाय अपनी छवि का उपयोग कर सकते astread_ok_selected

1

imageView खुद के लिए रेखीय लेआउट और setclicklistener के बजाय imageView की आईडी का उपयोग यह कारगर होगा !!

0

मेरे लिए यह लेआउट में android:clickable विशेषता को इसके बजाय छविव्यू को असाइन करने में मदद नहीं करता है। मैं बस चाहता था कि छवि क्लिक करने योग्य हो, हालांकि युक्त लेआउट नहीं।

0

आप ImageView को background

या

ImageButton को src बदलने के लिए और imageView विशेषताओं में वरना android:clickable="true" बारे में है।

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