-
2024-02-26 BOOTCAMP TILAndroid 2024. 2. 26. 21:20
오늘은 1주차 안드로이드 개발 강의 및 2주차 강의 일부를 수강하였다.
1주차에서는 크게 개발환경설치와 BMI 계산기 앱을 만들어보았다.
1. 개발환경설치 : Android Studio
- 이 과정에서 기억이 남는 점 → ① 코드를 작성한다 ② 빌드한다 ③ 실행한다
2. BMI 계산기 앱 만들기
- 앱을 강의를 따라 만들어보고, 전체적인 로직을 다시 훑어보았다.
- 기억에 남는 부분을 순서를 매기어 정리해보았다.
1) 한 페이지 당 한 액티비티(acitivity)가 필요하며, 액티비티는 xml 파일과 짝을 이룬다.
2) .xml 에서는 기본적인 위젯 위치 선정만 할 뿐, 기능 구현은 .kt 에서 진행한다.
3) .xml 에서는 Palette 에서 위젯을 끌어다 위치시키고, Attiribute 칸에서 속성을 변경한다.
<MainActivity.kt>
val heightEditText = findViewById<EditText>(R.id.et_height)4) .kt 에서 변수를 선언할 때, val 변수이름 = findViewById<위젯속성>(R.id.위젯아이디) 형태를 쓴다.
submitButton.setOnClickListener5) 버튼 위젯에 대해서 setOnClickListener 을 사용한다.
if(heightEditText.text.isEmpty())6) EditText의 내용이 빌 경우에 해당하는 코드
Toast.makeText(this, "신장을 입력해주세요!", Toast.LENGTH_SHORT).show()7) 경고 메세지를 띄울 때 해당하는 코드
val height : Int = heightEditText.text.toString().toInt()8) EditText 위젯의 text를 문자열로 바꾼후 int 로 바꿔서 다른 변수에 저장하는 코드
val intent = Intent(this, ResultActivity::class.java)
intent.putExtra("height", height)
intent.putExtra("weight", weight)
startActivity(intent)9) 다른 액티비티로 데이터를 넘기기위해 사용하는 인텐트 코드 (넘길때는 putExtra 를 사용, 안에는 key값과 변수 대입)
<ResultActivity.kt>
val height = intent.getIntExtra("height", 0)10) 다른 액티비티로부터 데이터를 넘겨받는 액티비티에서 사용하는 코드 : getIntExtra(key 값, 0) 사용
var value = weight / (height/100.0).pow(2.0)11) pow는 함수 모듈로 n제곱을 의미하며, pow(n) : n제곱 이다.
value = round(value*10)/1012) round는 결과를 소수 몇번째까지 표시할 것인지를 의미한다. 10 이면 소수 첫째 짜리, 소수 둘 째 자리이면 round(value*100)/100 을 해주면 된다.
resImage = R.drawable.img_lv1
resColor= Color.YELLOW13) ImageView 위젯에 해당하는 이미지를 불러올 때는, 'R.drawable.이미지이름'을 써주면된다. 색상을 불러올때는 'Color.색깔명' 을 쓰면 된다.
else if(value>=18.5 && value<23.0)14) 조건이 2개인 경우에 사용하는 코드이다. '&&'
tv_resValue.text=value.toString()
tv_resText.text = resultText15) val로 선언된 변수에다가 .text를 붙여야한다.
tv_resText.setTextColor(resColor)
iv_image.setImageResource(resImage16) TextView 위젯의 색깔을 변경시킬때는 .setTextColor(색깔명) 을 쓰면 된다. ImageView의 image를 지정하기 위해서는 .setImageResource('R.drawable.이미지이름' 또는 변수명)을 쓰면 된다.
btn_back.setOnClickListener {
finish()
}17) 버튼을 눌렀을 때, 이전 액티비티 화면으로 돌아가기 위해서는 finish() 를 사용하면 된다.
2주차에서는 "로또 앱 만들기"를 진행하였다. 다음은 잘 모르거나 암기해야 나중에 편할 것 같은 부분이다.
android:src="@drawable/ic_lotto"1) ImageView에서 이미지를 불러올 때는 'src' 를 사용하고, '@drawable/이미지 이름' 을 사용한다.
android:textColor="@android:color/holo_blue_dark"2) textColor을 불러올때는, '@android:color' 를 써야한다.
3)NumberPicker 라는 위젯을 배웠다. 마우스로 드래그로 하면 숫자가 변하는 위젯이다.
android:solidColor="#4CAF50"
android:background="@android:color/holo_orange_light"이렇게 두가지 색깔 속성 'solidColor' (바깥쪽) , 'background' (안쪽) 이 있다.
이렇게 1주차, 2주차 일부에서 배우면서 잘 모르는 부분을 조금이나마 더 기억할 수 있게 정리해보았다.
해당 부분을 내일 수업 시작하기 전까지 여러번 써보거나 읽어보면서 기억해두면 더욱 좋을 것 같다!
'Android' 카테고리의 다른 글
fold / foldIndexed 함수, 자료형 정리, 증감연산자 (0) 2024.03.05 2024-03-04 BOOTCAMP TIL (3) 2024.03.04 2024/02/29 BOOTCAMP TIL (1) 2024.02.29 2024/02/28 BOOTCAMP TIL (7) 2024.02.28 2024-02-27 BOOTCAMP TIL (1) 2024.02.27