2013-07-18 54 views
1

我是新来的android,我有一个列表视图与多个单选按钮。这些单选按钮是动态创建的,没有任何ID。我想在这些按钮上有一个点击监听器,如果单击任何单选按钮,那么它应该运行一些功能,那么我该怎么做呢?可能吗?为所有单选按钮添加事件侦听器

+0

为什么你会动态创建没有任何ID?一个'ListView'不会覆盖你的需求? – gunar

+0

设置它们一些ID或标签。 – bogdan

+0

'onClickListeners'可以被添加到动态生成的'RadioButtons'。 'RadioButton rButton = new RadioButton(Context)'。 'rButton.setOnClickListener(OnClickListener)'。 – Vikram

回答

2

在您的列表视图适配器的getView中创建RadioButton并设置侦听器。

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    LayoutInflater inflater = (LayoutInflater) this.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      res = inflater.inflate(R.layout.rowview, null); 
    RadioButton radioButton = (TextView)res.findViewById(R.id.radio_view); 
    radioButton.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

       @Override 
       public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
        // TODO Auto-generated method stub 

       } 
      }); 

} 

R.layout.rowview是您列表视图中单个行的视图。 R.id.radio_view是你的单选按钮的编号

+0

whats'radio_view' ?? –

+0

@ntechi radio_view是您的RadioButton的视图ID。我编辑了我的答案。基本上rowview是一个布局文件,它包含你的Radio Button,它的id是radio_view。 – sirackh

+0

thnks,它的工作 –

相关问题