我正在尝试开发一个计算器应用程序。
按 1 按钮时,文本视图显示“1”,按 2 时,文本视图显示“2”,替换为“1” ”。
我的问题是当按下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
}
}
答案 0 :(得分:3)
使用以下内容:
textview.append(MY_NUMBER);
您需要将其添加到按钮onClick
。
答案 1 :(得分:1)
点击按钮,执行以下操作。
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");
}
});
答案 2 :(得分:0)
答案 3 :(得分:0)
朋友,
在每个onclick()
内写下以下代码,而不是仅编写textView.setText("1")
。
String s1 = textView.getText().toString;
textView.setText(s1 + "0");