2013-07-18 53 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,它的工作 –

相關問題