2013-07-09 7 views
9

में टैब की तरह दिखने वाले बटन बनाना मुझे इस तरह का दिखना चाहिए। वे tabs की तरह प्रतीत नहीं होते हैं, इसलिए मुझे विश्वास है कि वे बटन हैं।एंड्रॉइड

enter image description here

मैं drawable में एक चयनकर्ता रखकर toggle button साथ ही प्रकार प्राप्त करने में सक्षम हूँ।

<ToggleButton 
    android:id="@+id/toggleButton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:background="@drawable/custom_selector"  
    android:textOn=" Button1 Button2" 
    android:textOff=" Button1 Button2" /> 

लेकिन उनके पास केवल दो मान हैं और चयनित टैब पर क्लिक करके अन्य चुने गए और वर्तमान में एक अचयनित हो जाता है। लेकिन मुझे बिल्कुल टैब की तरह चाहिए। तो क्या कोई इसे प्राप्त करने में मेरी मदद कर सकता है? अग्रिम में धन्यवाद।

+0

बटन टॉगल का प्रयोग न करें, drawable में चार बटन और उपयोग चयनकर्ता लेते हैं। –

+0

@ManojPal धन्यवाद, लेकिन वे उपरोक्त कोने के आकार और सभी की तरह नहीं दिखते हैं। वह भी एक बटन चुनकर बटन को सामान्य रंग फिर से प्राप्त करना चाहिए। – rick

+0

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

उत्तर

13

.. आप सभी बटन के लिए चयनकर्ता बना सकते हैं और चयनकर्ता पृष्ठभूमि और अशक्त बटन के साथ RadioGroup उपयोग करने के लिए ..

नीचे है रेडियो समूह कोड।

<RadioGroup 
    android:id="@+id/rdogrp" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="8dp" 
    android:gravity="center" 
    android:orientation="horizontal" > 

    <RadioButton 
     android:id="@+id/btn1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="0dp" 
     android:background="@drawable/btn1Selector" 
     android:button="@null" 
     android:checked="true" 
     android:gravity="center" /> 

    <RadioButton 
     android:id="@+id/btn2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="0dp" 
     android:background="@drawable/btn2Selector" 
     android:button="@null" 
     android:gravity="center" /> 

    <RadioButton 
     android:id="@+id/btn3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="0dp" 
     android:background="@drawable/btn3Selector" 
     android:button="@null" 
     android:gravity="center" /> 

    <RadioButton 
     android:id="@+id/btn4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="0dp" 
     android:background="@drawable/btn4Selector" 
     android:button="@null" 
     android:gravity="center" /> 
</RadioGroup> 

यहाँ नमूना कोड के लिए btn1Selector.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/btn1_selected" android:state_checked="true" /> 
    <item android:drawable="@drawable/btn1_normal" android:state_checked="false"/> 
</selector> 
+0

+1 धन्यवाद, इसे जांच लेंगे। – rick

1

आप सामान्य बटन का उपयोग करने के बजाय टॉगल बटन के बजाय ऐसा कुछ कर सकते हैं।
, तो "डेटा" बटन इस

data(View v) 
{ 
    databtn.setBackgroundResource(R.drawable.image1); 
    w_chartbtn.setBackgroundResource(R.drawable.image2); 
    H_chartbtn.setBackgroundResource(R.drawable.image2); 
} 

कैसा लगा क्लिक किया "एच चार्ट" बटन

H_chart(View v) 
{ 
    databtn.setBackgroundResource(R.drawable.image2); 
    w_chartbtn.setBackgroundResource(R.drawable.image2); 
    H_chartbtn.setBackgroundResource(R.drawable.image1); 
} 
1

उपयोग सरल बजाय बटन टॉगल करें बटन क्लिक किया। और इस तरह सेट पृष्ठभूमि:

मैं 1 बटन के लिए उदाहरण दे रहा हूँ:

android:background="@drawable/data_button_select_state" 

और अपने 'drawable' नामक फ़ोल्डर data_button_select_state में एक xml फ़ाइल जोड़ें:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" > 
<item android:drawable="@drawable/data_image_selected_state" 
     android:state_selected="true" /> 
<item android:drawable="@drawable/data_image_selected_state" 
     android:state_pressed="true" /> 
<item android:drawable="@drawable/data_image_without_selected" /> 
</selector> 

अब में कोड जोड़ने इस तरह जावा फ़ाइल:

डेटा बटन क्लिक किया जब:

data_button.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      data_button.setActivated(true); 
      H_chart_button.setActivated(false); 
          w_chart_button.setActivated(false); 
          hc_chart_button.setActivated(false); 

     } 
    }); 

इस तरह के अन्य बटन भी बदलें। हो जाएगा ताकि चयनकर्ता बनाने के लिए आप

पालन @Andru जवाब मदद कर सकता है ...

+0

+1 धन्यवाद। कोशिश करो – rick