Android单选按钮和按钮单击事件

时间:2013-03-11 15:12:30

标签: android button dynamic onclick

我有一个具有不同组件的应用程序(radiobutton,checkbox,button vs)。我动态创建所有这些组件,但现在有一个问题;

我无法在创建时为所有人创建活动。我需要为所有这些活动提供建议。

原谅我,我的英语有点不好,但提前谢谢你。 请帮帮我

2 个答案:

答案 0 :(得分:0)

您是否尝试在活动中实施onclicklistener?在那之后,对于所有组件,你应该设置他们的onclicklistener。但是有一个重点.Radiobutton和checkbox有自己的监听器,“setOnCheckedChangeListener”。我想你应该用它。但是如果你愿意,可以像这样实现OnClickListener。

public class myActivity extends Activity implements OnClickListener {
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

            button1.setOnClickListener(this);
            checkbox1.setOnClickListener(this);
            radiobuton1.setOnClickListener(this);

}

@Override
public void onClick(View v) {
    //You can listen "click event" of button1 ,checkbox1 and radiobutton1 here.

}

}

答案 1 :(得分:0)

RadioButton rb ; 
CheckBox cb;
Button btn;

public void MultiEvent (int clickId ){
    if (clickId == 0) {

    }else if (clickId == 1) {

    }else if (clickId == 2) {

    }
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    rb = (RadioButton)findViewById(R.id.radioButton1);
    cb = (CheckBox)findViewById(R.id.checkBox1);
    btn = (Button)findViewById(R.id.button1);

    btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            int clickId = 0;
            MultiEvent (clickId );
        }
    });

    rb.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            int clickId = 1;
            MultiEvent (clickId );
        }
    });

    cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            // TODO Auto-generated method stub
            int clickId = 2;
            MultiEvent (clickId );
        }
    });


}