[안드로이드] - v.getId() 이용한 간단한 계산기 구현
| v.getId() 이용한 간단한 계산기 구현
public class MainActivity extends AppCompatActivity {
EditText editText1, editText2; // 위젯 변수 선언
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) { // MainActivity 클래스 실행시 자동적으로 제일 먼저 실행되는 메소드
super.onCreate(savedInstanceState); // 빈 액티비티 생성
setContentView(R.layout.activity_main); // 액티비티에 activity_main.xml 을 출력
this.setTitle("심플한 계산기"); // 타이틀 설정
editText1 = (EditText)findViewById(R.id.editText1); // 선언한 위젯변수를 지정한 id 값으로 가져옴
editText2 = (EditText)findViewById(R.id.editText2);
textView = (TextView)findViewById(R.id.textView1);
}
public void buttonClick(View v){ // 클릭 리스너 생성
String text1 = editText1.getText().toString(); // editText1, 2의 텍스트 값을 각각 문자열로 저장
String text2 = editText2.getText().toString();
int num1 = Integer.parseInt(text1); // 저장한 문자열을 int형 정수로 바꿔 저장
int num2 = Integer.parseInt(text2); // 만일, 텍스트를 가져오는 것을 onCreate()에서 한다면 어플이 켜질 때int sum = 0; // 아무 값도 없는 NULL을 가져오기에 오류가 발생한다
if(v.getId() == R.id.button1){ // v.getId()를 통해 각 버튼의 id를 비교하여 각각 이벤트를 달리할 수 있다
sum = num1 + num2; // 이를 위해서는 각 버튼마다 onClick 메소드 값이 같아야 한다 onClick="buttonClick"
textView.setText("계산 결과 : " + sum); // 가져온 textView에 setText()를 이용하여 출력문을 설정한다
}else if(v.getId() == R.id.button2){
sum = num1 - num2;
textView.setText("계산 결과 : " + sum);
}else if(v.getId() == R.id.button3){
sum = num1 * num2;
textView.setText("계산 결과 : " + sum);
}else if(v.getId() == R.id.button4){
sum = num1 / num2;
textView.setText("계산 결과 : " + sum);
}
}
}
'안드로이드' 카테고리의 다른 글
[안드로이드] - isChecked() 를 이용한 체크박스 및 라디오버튼 (0) | 2017.04.21 |
---|---|
[안드로이드] - Intent 이용한 액티비티 이동 및 데이터 전송 (0) | 2017.04.20 |
[안드로이드] - TextView 문자열 가져오기 (0) | 2017.03.27 |
[안드로이드] - strings.xml 이용하기 (0) | 2017.03.14 |
[안드로이드] - 스크롤뷰(ScrollView) 구성하기 (0) | 2017.02.04 |