如何为edittext添加按钮值

时间:2014-07-24 06:57:06

标签: android

我有3个按钮和1个edittext

   <Button
      android:id="@+id/button1" android:layout_width="wrap_content"
      android:layout_height="wrap_content" android:text="1" />
  <Button
      android:id="@+id/button2" android:layout_width="wrap_content"
      android:layout_height="wrap_content" android:text="2" />
  <Button
      android:id="@+id/button3" android:layout_width="wrap_content"
      android:layout_height="wrap_content" android:text="3" />
  <EditText
    android:id="@+id/display" android:layout_width="match_parent"
    android:layout_height="wrap_content" android:text="@string/result" />

当我点击android模拟器按钮1 时, 1 的文本值应该显示在 edittext 中怎么能这样做

4 个答案:

答案 0 :(得分:0)

你有一个方法button.getText(),你可以从中获取按钮1的文本,然后可以使用edittext.setText()方法更新edittext

答案 1 :(得分:0)

只需从java文件中的button布局文件中引用xml,在其上使用setOnClickListener()并覆盖onClick()的方法onClickListener() 。在onClick方法中,只需将edittext的文本设置为您要添加到其中的文本。请参阅Android: How to set the contents of a Edit text from a Button click?

答案 2 :(得分:0)

final Button b1 = (Button) findViewById(R.id.button1);
final EditText e1 = (EditText) findViewById(R.id.display);
b1.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        e1.setText(b1.getText().toString());
    }
});

只需复制粘贴此代码,它一定会对你有用

答案 3 :(得分:0)

它的工作。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    editText = (EditText) findViewById(R.id.edittext1);
    button1 = (Button) findViewById(R.id.button1);
    button2 = (Button) findViewById(R.id.button2);
    button3 = (Button) findViewById(R.id.button3);
    button1.setOnClickListener(this);
    button2.setOnClickListener(this);
    button3.setOnClickListener(this);
}

@Override
public void onClick(View v) {
    Button button = (Button)v;
    editText.setText(button.getText().toString());
}