정보를 보호하는 대학생
<안드로이드 스터디 01> 간단한 계산기 만들기 본문
1. 코틀린 코드
package com.android.cons
import android.graphics.Color
import android.graphics.Typeface
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import org.w3c.dom.Text
class MainActivity : AppCompatActivity() {
////////////////////변수 선언//////////////////////////////////
lateinit var edit1 : EditText
lateinit var edit2 : EditText
lateinit var btnAdd : Button
lateinit var btnSub : Button
lateinit var btnMul : Button
lateinit var btnDiv : Button
lateinit var textResult : TextView
lateinit var num1 : String
lateinit var num2 : String
var result : Int? = null
//////////////////////////////////////////////////////////////
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "초간단 계산기"
edit1 =findViewById(R.id.Edit1)
edit2 = findViewById(R.id.Edit2)
btnAdd = findViewById(R.id.BtnAdd)
btnSub = findViewById(R.id.BtnSub)
btnMul = findViewById(R.id.BtnMul)
textResult=findViewById(R.id.TextResult)
btnAdd.setOnTouchListener { v, event ->
num1 = edit1.text.toString() //edit1에 입력받은 사항을 스트링으로 변환해서 num1에 넣기
num2 = edit2.text.toString() //edit2에 입력받은 사항을 스트링으로 변환해서 num2에 넣기
result = Integer.parseInt(num1) + Integer.parseInt(num2) // result에 num1과 num2의 정수값을 넣기
textResult.text = "계산결과 :" + result.toString()
// textResult 텍스트뷰의 텍스트 출력. result의 정수를 스트링으로 변환
false
}
btnSub.setOnTouchListener{v, event ->
num1 = edit1.text.toString()
num2 = edit2.text.toString()
result = Integer.parseInt(num1) - Integer.parseInt(num2)
textResult.text = "계산결과 :" + result.toString()
false
}
btnMul.setOnTouchListener{v, event->
num1 = edit1.text.toString()
num2 = edit2.text.toString()
result = Integer.parseInt(num1) * Integer.parseInt(num2)
textResult.text = "계산결과 : " + result.toString()
false
}
}
}
2. xml 코드
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
>
<EditText
android:id="@+id/Edit1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="숫자1"
/>
<EditText
android:id="@+id/Edit2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="숫자2"
/>
<Button
android:id="@+id/BtnAdd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:text="더하기"
/>
<Button
android:id="@+id/BtnSub"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:text="빼기"
/>
<Button
android:id="@+id/BtnMul"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:text="곱하기"
/>
<Button
android:id="@+id/BtnDiv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:text="나누기"
/>
<TextView
android:id="@+id/TextResult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0000"
android:textSize="30sp"
android:text="계산결과 : "/>
</LinearLayout>
3. 결과화면
4. 하고싶은 말
계산기 만들기를 통해서 입력한 값을 스트링으로 바꾸거나 정수로 바꿔주는 코드 작업이 필요하다는 것을 알았다.
또한 띄어쓰기가 이상하면 결과가 안나온다는 사실을 알았다.
+ - * /를 쓸 때는 양 옆에 띄어쓰기를 해야된다.
'개발 > 안드로이드 스터디' 카테고리의 다른 글
<안드로이드 스터디 06> 색깔 등록, 기본 어플 색깔 설정 바꾸기 (0) | 2022.01.14 |
---|---|
<안드로이드 스터디 05> 체크박스 -> 라디오버튼 -> 버튼 -> 선택에 따른 이미지 보여주기 (0) | 2022.01.14 |
<안드로이드 스터디 04> EditText 입력 후 버튼누르면 그대로 TextView 출력 (0) | 2022.01.07 |
<안드로이드 스터디 03> 라디오 버튼을 누르면 토스트 띄우기 (0) | 2022.01.06 |
<안드로이드 스터디 02> 체크박스를 누르면 토스트 띄우기 (0) | 2022.01.06 |