인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

dudgkr666님의 프로필 이미지
dudgkr666

작성한 질문수

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

화면간 데이터 전달 - Intent putExtra

if문 중복 안하는 방법

작성

·

201

0

선생님이 알려주시는 대로 한번 코드를 작성하고,

어떻게하면 조금 더 간편하고 읽기 쉬운 코드를 만들수있을까

고민해 봤습니다.

 

if문을 통한 것 보다 when절이 나을꺼같아 해봤는데 앱은 잘 작동하는데 이런식으로 써도 될지요~??

 

남은 강의도 열심히 잘 들어볼께요!

 package com.example.twice
 
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.ImageView

 class ImageInsideActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_image_inside)

        val getData = intent.getStringExtra("data")

        val memberImage = findViewById<ImageView>(R.id.memberImageArea)

        when(getData){
            "1" -> memberImage.setImageResource(R.drawable.member_1)
            "2" -> memberImage.setImageResource(R.drawable.member_2)
            "3" -> memberImage.setImageResource(R.drawable.member_3)
            "4" -> memberImage.setImageResource(R.drawable.member_4)
            "5" -> memberImage.setImageResource(R.drawable.member_5)
            "6" -> memberImage.setImageResource(R.drawable.member_6)
            "7" -> memberImage.setImageResource(R.drawable.member_7)
            "8" -> memberImage.setImageResource(R.drawable.member_8)
            "9" -> memberImage.setImageResource(R.drawable.member_9)
        }
    }
}

 

답변 2

1

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

좋은 방식의 시도네요!

사실 말씀하신 것 처럼 하시는것도 좋은 방법입니다.

강의에서보다 더 좋은 방법일 수도 있겠네요!

 

사실 강의는 더 좋은 방법보다 더 쉽고 이해가 빠르실 것 같은 방법으로 코드를 작성했습니다.

 

더 좋은 방법이 있으시면 변경해보시면서 시도해보셔도 좋습니다.

 

추가적인 문의가 있으시면 또 문의주세요~

dudgkr666님의 프로필 이미지
dudgkr666
질문자

선생님께선 당연히 쉽고, 이해가 빠른 것 위주로 알려주실수 밖에 없는 입장이라고 생각해서

제 나름대로 다른 방법은 없을까 고민해 봤어요ㅎㅎ

틀린 방법은 아니라니 다행이네요! 감사합니다^^

남은 강의도 열공!!

0

dudgkr666님의 프로필 이미지
dudgkr666
질문자

좀 더 복잡해지면

member.Image.setImageResource(R.drawable.member_1)부분을 함수로 지정하고 인자 값을 받아서 넘겨주면 보기에는 더 좋을꺼같은데 효과?가 있을지 모르겠네요

dudgkr666님의 프로필 이미지
dudgkr666

작성한 질문수

질문하기