2011-09-28 11 views
0

Je dois ajouter RadioButton dans ListView et en effet j'ai essayé, mais le problème que je reçois est que lorsque je clique sur le bouton radio, il est merveilleusement sélectionné ... mais en même temps, si vous ne voulez pas sélectionnez ce bouton particulier ... il reste simplement sélectionné. Ici, je fournirai mon code:Ajouter radioButton dans ListView

import android.app.ListActivity; 
import android.graphics.Color; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
import android.widget.Toast; 

public class RadioInCustomListView extends ListActivity { 

    ListView lv; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 


     String[] names = new String[] { "Issues", "Request for Information", 
        "Contracts", "Purchase Orders", "Change Orders", "Proposals", 
        "Submittals" }; 
      lv = getListView(); 
      lv.setCacheColorHint(Color.TRANSPARENT); 
      ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.radio_item, names); 
      //this.setListAdapter (new ArrayAdapter<String>(RadioInCustomListView.this,R.layout.radio_item, names)); 
      setListAdapter(adapter); 
    } 

     protected void onListItemClick(ListView l, View v, int position, long id) { 
      super.onListItemClick(l, v, position, id); 
      Object o = this.getListAdapter().getItem(position); 
      Toast.makeText(RadioInCustomListView.this, o.toString(), Toast.LENGTH_LONG).show(); 


      } 
    } 

Mes xmls: main.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
<ListView 
    android:id="@+android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    /> 
</LinearLayout> 

radio_item.xml

<?xml version="1.0" encoding="utf-8"?> 
<RadioButton xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:gravity="center_vertical" 
    android:checkMark="?android:attr/listChoiceIndicatorSingle" 
    android:paddingLeft="6dip" 
    android:paddingRight="6dip" 
/> 
+0

laissez vérifier cette publication. Avoir le même genre de problème [Cliquez ici] [1] [1]: http://stackoverflow.com/questions/4250599/android-listview-with-radiobutton-in-singlechoice-mode-and- a-custom-row-layout – sandy

Répondre

2

peut-être cela vous aide de code

ls.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice,list_sexuality)); 
ls.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 
+1

Merci à tous pour votre aimable réponse, Yah je peux le faire mais j'ai besoin de créer ma propre mise en page .... est-il possible de personnaliser la mise en page (layout.simple_list_item_single_choice) –

Questions connexes