我正在寻找解决方案,如何得到被按下按钮的值。
当我尝试这样做时:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button numb1 = ((Button)this.findViewById(R.id.numb1));
    numb1.setOnClickListener(this);
}

public void onClickHandler(View v){
    String pressed = null;

    switch (v.getId()) {
        case R.id.numb1:
            pressed=numb1.getText().toString();
            break;
            //OR
        case R.id.numb1:
            pressed=R.id.numb1.getText().toString();
            break;
     }

    new AlertDialog.Builder(this).setTitle("Info").setMessage(pressed).setNeutralButton("Okey", null).show();
}

不幸的是,这两种情况都很糟糕。
我仍然无法得到按下按钮的值…你能帮我解决这个问题吗?
谢谢您。

最佳答案

pressed=((Button)v).getText();应该做这项工作。
另外,让活动实现View.OnClickListener,而不是onclickhandler()用实现重写方法public void onClickHandler(View v)

07-27 20:10