当我点击我的电台组中的另一个单选按钮时,为什么我的onCheckedChanged方法没有被触发?

时间:2012-03-11 19:25:16

标签: android radio-button radio-group

package matthew.datacollector;

import android.app.Activity;
import android.view.View;
import android.widget.TextView;
import android.widget.RadioGroup;
import android.widget.Toast;
import android.os.Bundle;

public class DataCollectorActivity extends Activity implements RadioGroup.OnCheckedChangeListener, View.OnClickListener {

    private TextView tv;
    private RadioGroup rg;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        this.tv = (TextView) findViewById(R.id.textView1);
        this.rg = (RadioGroup) findViewById(R.id.radioGroup1);
        rg.setOnClickListener(this);
    }

    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        this.tv.setText("lol");
        Toast.makeText(this.getApplicationContext(), "hey", Toast.LENGTH_LONG).show();
    }

    @Override
    public void onClick(View v) {
        this.tv.setText("lol");
    }
}

我不明白为什么这不起作用:/。我希望它能够设置textview的文本,你甚至可以看到我已经在吐司中进行调试。仍然没有,我已经尝试了没有@Overrides

1 个答案:

答案 0 :(得分:6)

您忘了在RadioGroup上设置侦听器onCheckedChange:

rg.setOnCheckedChangeListener(this);