Android

[Android] 간단한 연습문제 풀어보기 2

YaluStar 2017. 1. 19. 22:30

안녕하세요


이번주 폭설주의보라는데 다들 몸 관리 잘하세요 ㅠㅠ

눈 적당히 왔으면 좋겠다...


이번에는 새로운 문제를 가져왔습니다.


물론 이것도 간단한 문제이긴 합니다만 제 지식이 아직 미천하기에 이정도 부터 시작해야죠 ㅠㅠ


그럼 바로 시작하겠습니다


우선 오늘 만들건

사진이 안보일시 클릭하시면 원본사진이 뜹니다.

이것입니다

초간단 계산기

원래는 빼기랑, 곱하기, 나머지 값도 있엇는데 저거 2개면 나머지는 그냥 하기에 뺐습니다 ㅎㅎ


그럼 다시 본론으로와서



우선 프로젝트를 하나 만드시고 프로젝트 이름은 아무거나 하셔도 됩니다.


사진이 안보일시 클릭하시면 원본사진이 뜹니다.


이렇게 만들어 줍시다


저기서 X 표시 나오는거는 한글 설정했는데 깨져서 보이네요 ㅎ....


소스코드로 보시면

사진이 안보일시 클릭하시면 원본사진이 뜹니다.


이렇게 되겠습니다.


전 프로젝트명을 hellow2 로 했군요


다 작성하셨으면


사진이 안보일시 클릭하시면 원본사진이 뜹니다.


strings.xml 파일에 이렇게 써주시면 됩니다.



그다음 main_activity 로 가서



사진이 안보일시 클릭하시면 원본사진이 뜹니다.




이렇게 쳐주시면 되는데


이 소스코드는


EditText 1EditText 2 에서 입력한 숫자를 받아와서

버튼을 클릭하면 그에 맞게 계산을 해주는 것입니다.


btn1 이  더하기 버튼이고


btn4 가 나누기 버튼입니다.



여기서 특이한것은 !!!


사진이 안보일시 클릭하시면 원본사진이 뜹니다.


소스코드를 보시면 "더하기 버튼" 은  setOnTouchListener  을 사용하였고


"나누기 버튼"setOnClickListener 을 사용하였다는 것입니다.


차이점이 먼가 해서 알아봤는데


Touch 는  누르고 있을 때 실행이 되는 것과  눌렀다 땠을때!!  실행되는 코드가 존재한다는겁니다.


Click 은 말 그대로 클릭하면 실행되는 코드  1개만 있습니다.


아직 Touch 에 대해 잘 몰라서 일단은 누르고 있을 때 실행되는것만 적어놨습니다.



num1 과 num2 가 있는데


저것은 num1 일 경우

edit1 에 입력한 값을 가져와 문자열로 바꾼뒤 num1 에 저장하겠다 이뜻입니다.


그리고 result 보시면 Double.parseDouble(num1) 이있는데

이것은 num1에 저장된 값을 Double 형으로 바꾸겠단 뜻입니다.


※ 그리고 한가지더


if  조건문쪽에 보시면


TextUtils.isEmpty(edit1.getText().toString()) 가 있는데


이걸 설명하자면


edit1 에 있는 값을 문자열로 반환하고 나서  "NULL" 값 이면 TRUE 값을  아닐경우 FALSE 값을 반환시켜줍니다.


저기서 보이는 조건대로라면


edit1 이나 edit2 가 NULL 이면 

Toast를 실행시키고   아닐 경우


계산하는 else 식을 실행시킨다는 뜻입니다.

사진이 안보일시 클릭하시면 원본사진이 뜹니다.

정상적인 계산


사진이 안보일시 클릭하시면 원본사진이 뜹니다.

edit1 이 NULL


사진이 안보일시 클릭하시면 원본사진이 뜹니다.

edit2 가 NULL


사진이 안보일시 클릭하시면 원본사진이 뜹니다.

둘다 NULL






이상 더하기 버튼은 끝이고 


***나누기 버튼***

사진이 안보일시 클릭하시면 원본사진이 뜹니다.



얘는 보시면  else if  가 있습니다


얘는 나누기가  edit1 / edit2  이기때문에


일단 첫번째 조건 NULL 값 확인하고



NULL이 없고  edit2 값이 0 일경우 Toast 를 실행하게 했습니다.


edit2.getText().toString()  이게 edit2 에있는 값을 문자열로 반환시키는 것이기 때문에  equals"0" 과 비교하도록 조건을 설정했습니다.


사진이 안보일시 클릭하시면 원본사진이 뜹니다.


계산 결과는 실습하다 생긴 것이니 무시하시고

계산 결과 밑에 뜬 검은 박스를 보시면 됩니다.



사진이 안보일시 클릭하시면 원본사진이 뜹니다.


이것이 제대로 나누기 했을 때 화면






이상으로 초간단 계산기에 대해 알아보았습니다.



setOnClickListener


setOnTouchListener


TextUtils.isEmpty()


getText().toString()


Double.parseDouble()



반응형