使用两个onclick功能一个按钮

时间:2014-02-18 10:54:01

标签: android

public void onClick(View v)
{
    if (!q1.isChecked() && q2.isChecked())
    {
        new AlertDialog.Builder(this).setMessage(R.string.negative).show();         
    } 
}


public void onClick(View v)
{
    if (q1.isChecked() && !q2.isChecked())
    {
        new AlertDialog.Builder(this).setMessage(R.string.positive).show();         
} 
}

如何使此代码生效?我知道两个if条件可以在一个OnClick函数中,但是如果来自单独函数的条件在一个按钮上工作,我该怎么做两个?

3 个答案:

答案 0 :(得分:1)

将两部分放在一个侦听器中并使用if else

处理
public void onClick(View v) {

    if (!q1.isChecked() && q2.isChecked()) {
            new AlertDialog.Builder(this).setMessage(R.string.negative).show();         
            } 
   else if (q1.isChecked() && !q2.isChecked()) {
            new AlertDialog.Builder(this).setMessage(R.string.positive).show();         
            } 
}

答案 1 :(得分:0)

public void onClick(View v) {

    if (!q1.isChecked() && q2.isChecked()) {
            new AlertDialog.Builder(this).setMessage(R.string.negative).show();         
            } 
if (q1.isChecked() && !q2.isChecked()) {
            new AlertDialog.Builder(this).setMessage(R.string.positive).show();         
            } 
}

答案 2 :(得分:0)

您不需要两次onClick方法。使用if else

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html

public void onClick(View v) {

    if (!q1.isChecked() && q2.isChecked()) {
            new AlertDialog.Builder(this).setMessage(R.string.negative).show();         
    } 
    else if(q1.isChecked() && !q2.isChecked()) {
        new AlertDialog.Builder(this).setMessage(R.string.positive).show();         
        } 
}

请看看@

http://developer.android.com/reference/android/view/View.OnClickListener.html

你的评论对我没有意义。