[2023. 12. 20] 자기소개 앱 만들기(진행)

Gahyeon Lee·2023년 12월 20일
0

TIL

목록 보기
30/47

▶️ [if - else if]와 [if - if]

조건문을 만들다가 else if를 if로 바꾸어 if를 2번 써도 구현이 잘 되길래 if - else if를 쓰는 것과 if - if를 쓰는 것에 어떤 차이가 있는지 찾아보았다.

if - else if : 총 조건문이 100개 있을때 첫 if문 조건에 만족하면 뒤에 99개의 else if조건은 체크하지 않는다.

if - if : 총 조건문이 100개 있을때 만족 여부와 관계없이 뒤의 99개의 조건을 모두 체크한다.

-> 결론 : 상황에따라 다르게 사용해야 한다!

  • 특정 조건 만족하면 나머지 조건을 체크할 필요가 없는 경우 if - else if 사용.
  • 조건 만족 여부에 관계 없이 모두 조건 체크가 필요한 경우 if - if 사용.
  • if-else if 사용이면 성립 확률이 높은 조건일수록 위쪽에 걸어주는 게 성능상 좋다.

▶️ Intent()

  • Intent()는 새로운 액티비티를 띄울 때 쓰는 명령어이다.
  • 어디서 보내는 건지, 도착지가 어디인지(어떤 액티비티를 띄울지) 두가지를 써준다.
  • 데이터를 실어서 보낼 때는 putExtra()로 키(name)와 데이터를 각각 써서 보낸다.(편지를 보내는 것처럼 안에 내용을 담아서 보낸다고 생각하자.) 키 없이 데이터만 보내면 받는 액티비티에서 꺼낼 때 어떤 데이터인지 알 수 없게 되기 때문에 구분하기 위해 데이터 앞에 키도 써줘야 한다. 도착지에서 키를 가지고 데이터를 꺼낸다.
val intent = Intent(this, HomeActivity::class.java)
            intent.putExtra("dataFromSignInActivity", et_id.text.toString())
            startActivity(intent)
  • 데이터를 꺼낼때는 intent에 hasExtra()로 키가 있는지 확인하고, 키가 있다면 getStringExtra()로 키를 적어주면 그 키에 해당하는 데이터를 꺼내온다.
if (intent.hasExtra("dataFromSignInActivity")) {    
    tv_id.text = "아이디 : " + intent.getStringExtra("dataFromSignInActivity")    
}

▶️ 키 값 만들어 놓기(Object 만들기)

intent로 데이터를 실어 보낼 때 키(name)에 ""로 string 값을 줘도 되지만(하드코딩), 보통 키 값을 Constants라는 Object를 만들어서(New -> Kotlin Class/File -> Object) string 값으로 미리 정의해 놓는다.
실무에서는 개발자마다 개발하는 액티비티가(화면이) 달라서 intent를 보내고 받을 때마다 키 값을 약속하고 기억하는 것도 번거롭고, 헷갈릴 것이기 때문에 미리 정의해 두고 가져다 쓰는 것이다.

profile
코린이 강아지 집사🐶

0개의 댓글