2

我正在尝试开发一个计算器应用程序。

当按下1按钮时,文本视图显示“1”,当我按下2时,文本视图通过替换“1”显示“2”。

我的问题是如何在依次按下 1 和 2 时显示“12”。

我目前的代码是:

package com.calculator.kartheek;

import android.os.Bundle; 
import android.app.Activity;
import android.text.Editable;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity implements OnClickListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final TextView textview=(TextView)findViewById(R.id.editText);

    Button one=(Button)findViewById(R.id.one);
    Button two=(Button)findViewById(R.id.two);
    Button three=(Button)findViewById(R.id.three);
    Button four=(Button)findViewById(R.id.four);
    Button five=(Button)findViewById(R.id.five);
    Button six=(Button)findViewById(R.id.six);
    Button seven=(Button)findViewById(R.id.seven);
    Button eight=(Button)findViewById(R.id.eight);
    Button nine=(Button)findViewById(R.id.nine);
    Button zero=(Button)findViewById(R.id.zero);
    Button equals=(Button)findViewById(R.id.equals);
    Button add=(Button)findViewById(R.id.plus);
    Button sub=(Button)findViewById(R.id.sub);
    Button mul=(Button)findViewById(R.id.mul);
    Button div=(Button)findViewById(R.id.division);
    Button dot=(Button)findViewById(R.id.dot);
    Button clear=(Button)findViewById(R.id.clear);

    one.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("1");
            textview.append(INPUT_SERVICE);
        }
    });

    two.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("2");
        }
    });

    three.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("3");
        }
    });

    four.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("4");
        }
    });

    five.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("5");
        }
    });

    six.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("6");
        }
    });

    seven.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("7");
        }
    });

    eight.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("8");
        }
    });

    nine.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("9");
        }
    });

    zero.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText("0");
        }
    });

    dot.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            textview.setText(".");
        }
    });
}

@Override
public void onClick(View arg0) {
    // TODO Auto-generated method stub

}



}
4

4 回答 4

4

使用以下内容:

textview.append(MY_NUMBER);

您将希望将此添加到您的按钮onClick中。

于 2013-05-03T12:59:15.820 回答
2

在按钮上单击,如下所示。

    textview.append("1");
    textview.append("2"); 

使用 append 将文本附加到 textview

  public final void append (CharSequence text)

在 API 级别 1 中添加

方便的方法:将指定的文本附加到 TextView 的显示缓冲区,如果它还不能编辑,则将其升级为 BufferType.EDITABLE。

编辑:

one.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        textview.append("1");  
    }
});

two.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        textview.append("2");
    }
});
于 2013-05-03T13:00:54.447 回答
0

你可以这样做。textView.setText(textView.getText()+"你想显示的任何数字");

于 2013-05-03T13:01:38.237 回答
0

朋友,在每个里面onclick()写下面的代码而不是只写textView.setText("1")

String s1 = textView.getText().toString;
textView.setText(s1 + "0");
于 2013-05-03T13:06:48.013 回答