int m_tempValue = 0, a,c=0;
에서 int를 float로 바꿔주면
textfield.setText(Integer.toString(m_tempValue));
밑줄친부분에서 오류가 나네요. int에서는 오류가 안먹히는데
해결방법좀 알려주세요
일단 소스 앞부분만 올릴께요
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
@SuppressWarnings("unused")
public class Wck20084724Activity extends Activity
{ EditText textfield;
float m_tempValue = 0, a,c=0;
int m_accValue = 0, we= 0,b=0;
char operator;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button1 = (Button) findViewById(R.id.button1);
Button button2 = (Button) findViewById(R.id.button2);
Button button3 = (Button) findViewById(R.id.button3);
Button button4 = (Button) findViewById(R.id.button4);
Button button5 = (Button) findViewById(R.id.button5);
Button button6 = (Button) findViewById(R.id.button6);
Button button7 = (Button) findViewById(R.id.button7);
Button button8 = (Button) findViewById(R.id.button8);
Button button9 = (Button) findViewById(R.id.button9);
Button button10 = (Button) findViewById(R.id.button10);
Button button11 = (Button) findViewById(R.id.button11);
Button button12 = (Button) findViewById(R.id.button12);
Button button13 = (Button) findViewById(R.id.button13);
Button button14 = (Button) findViewById(R.id.button14);
Button button15 = (Button) findViewById(R.id.button15);
Button button16 = (Button) findViewById(R.id.button16);
Button button17 = (Button) findViewById(R.id.button17);
textfield = (EditText) findViewById(R.id.editText1);
textfield.setText("0.0");
button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
textfield.setText("1");
m_tempValue = m_tempValue * 10 + 1.0f;
textfield.setText(Integer.toString(m_tempValue));
}
} );
int m_tempValue = 0, a,c=0;
에서 int를 float로 바꿔주면
textfield.setText(Integer.toString(m_tempValue));
--------------------------------------------
라는건
float m_tempValue = ~~~~~
textfield.setText(Integer.toString(m_tempValue));
로 하셨다는건가요? Integer에서 float를 toString하셨으니 그런겁니다. 만일 m_tempValue를 float으로 하셨으면
textfield.setText(Float.toString(m_tempValue));
라고 해주셔야됩니다.
를 아래와 같이 바꿔보세요
Java 에서는 Integer 형 + String 형 이 되면 Integer 형은 자동으로 String 형으로 변환됩니다.
int a = 0;
String s = "asd";
String r = a + s;
이면 r = "0asd" 와 같이 바뀌게 되죠