android single choice list selection problem?


i am using following code to display list with radio buttons now i want to select specific radio button of list by default so using setSelection property which does not work.

final String [] items=new String[]{"Item1","Item2","Item3","Item4"};
            ArrayAdapter<string> ad=new ArrayAdapter<string>(this,android.R.layout.simple_list_item_single_choice,items);

    list.setOnItemClickListener(new OnItemClickListener()

       public void onItemClick(AdapterView arg0, View arg1, int arg2,
         long arg3) {
        // TODO Auto-generated method stub
        TextView txt=(TextView)findViewById(;



please guide what mistake am i doing?


I might be completely off, but I think setSelection doesn't necessarely checks your item (as in checkbox, or radio), it navigates to it though.

As a workaround (maybe there is a more elegant solution) you can extend ArrayAdapter and set checked manually in a getView() method.

Add something like this to your class:

private static class MArrayAdapter extends ArrayAdapter<String> {
    public Adapter(final Context context, final String[] objects) {
        super(context, android.R.layout.simple_list_item_single_choice, objects);

    public View getView(final int position, final View convertView, final ViewGroup parent) {
        final CheckedTextView view = (CheckedTextView) super.getView(position, convertView, parent);
        view.setChecked(position == 2);
        return view;


And change your way of getting an adapter to new MArrayAdapter(this, items);

P.S. On my previous comment, my mistake, you better call setChoiceMode (it's just in my app, I call notifyDataSetChanged, so I don't really need it). I think your'r up to some weird behaviour without choice mode.

You'r looking for:

list.setItemChecked(2, true);

Need Your Help

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.