代码之家  ›  专栏  ›  技术社区  ›  UMAR-MOBITSOLUTIONS

安卓单一选择列表选择问题?

  •  6
  • UMAR-MOBITSOLUTIONS  · 技术社区  · 15 年前

    朋友,

    我使用以下代码显示带有单选按钮的列表 现在,我想在默认情况下选择列表的特定单选按钮,以便使用不起作用的setselection属性。

    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=(ListView)findViewById(R.id.List);
                list.setAdapter(ad);
    
    list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
    list.setSelection(2);
        list.setOnItemClickListener(new OnItemClickListener()
                {
    
           public void onItemClick(AdapterView arg0, View arg1, int arg2,
             long arg3) {
            // TODO Auto-generated method stub
            TextView txt=(TextView)findViewById(R.id.txt);
            txt.setText(list.getItemAtPosition(arg2).toString());
    
    
           }
    
                }
                );
    

    请引导我犯了什么错误?

    2 回复  |  直到 14 年前
        1
  •  6
  •   alex.zherdev    14 年前

    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);
        }
    
        @Override
        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;
        }
    
    }
    

    new MArrayAdapter(this, items);

        2
  •  31
  •   Larphoid    14 年前

    list.setItemChecked(2, true);