wanna be dev 🧑‍💻

Cool 하고 Sick한 개발자가 되고 싶은 uzun입니다

A.K.A. Kick-snare, hyjhyj0901, h_uz99 solvedac-logo

Android/Challenge

패스트캠퍼스 챌린지 09일차

Kick_snare 2022. 2. 1. 23:43
728x90

09일차

생성일: 2022년 2월 1일 오전 12:00

30개 프로젝트로 배우는 Android 앱 개발 with Kotlin 초격차 패키지 Online

강의 목표


  • 프로젝트를 따라해보며 앱개발에 필요한 기술을 학습할 수 있습니다.
  • 프로젝트를 따라해보며 앱개발에 필요한 기술을 학습할 수 있습니다.
  • 앱 개발시 원하는 기능을 구현하기 위해 어떤 기술이 필요한 지 알 수 있습니다.
  • 디자인 아키텍처 패턴, 비동기 처리 등 효율적인 앱 개발 방법을 익힐 수 있습니다.

목차 02 Basic - Ch01.BMI계산기


  • 인트로(완성앱&구현기능소개)
  • Linearlayout 이용하여 화면 그리기
  • 화면을 이쁘게 꾸며보기
  • 키와 몸무게 입력 화면 기능 구현하기 (1)
  • 키와 몸무게 입력 화면 기능 구현하기 (2)
  • 결과화면 기능 구현하기
  • 아웃트로(정리)

키와 몸무게 입력 화면 기능 구현하기 (2)

  • Result 버튼의 동작을 따로 분리하기 위해 새로운 activity를 생성
class ResultActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_result)
    }
}
  • onCreate 함수안에 동작을 정의한다
  • setContentView로 새로운 뷰를 연결한다
val intent = Intent(this, ResultActivity::class.java)
startActivity(intent)
  • 위와 같은 함수로 result 화면은 보여주는 새로운 액티비티로 넘어간다
  • ⚠️ AndroidManifest에 새로운 액티비티를 추가해야한다
<activity android:name=".ResultActivity"/>

결과화면 기능 구현하기

  • resultActivity에서는 신장 값과 체중 값을 알 수 없다
val intent = Intent(this, ResultActivity::class.java)
intent.putExtra("height", height)
intent.putExtra("weight", weight)

startActivity(intent)
  • Intent를 생성하여 넘겨줄때 인자를 담아 넘겨주도록 한다
val height = intent.getIntExtra("height", 0)
val weight = intent.getIntExtra("weight", 0)
  • intent로 받은 액티비티는 getExtra로 받아온다.
  • 두번째 인자는 defalut 값이다
  • 이제 bmi 계산을 위해 받아온 값들로 연산한다
val bmi = weight / Math.pow(height / 100.0, 2.0)
// weight / (height / 100.0).pow(2.0) 함수형

val resultText = when {
    bmi >= 35.0 -> "고도 비만"
    bmi >= 30.0 -> "중정도 비만"
    bmi >= 25.0 -> "경도 비만"
    bmi >= 23.0 -> "과체중"
    bmi >= 18.5 -> "정상 체중"
    else -> "저체중"
}
  • 단위 값과 정수와 실수등을 잘 고려하여 bmi 지수를 계산한다

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

수강인증샷

링크

https://bit.ly/37BpXiC

728x90