개인 과제 제출 후 해설본 보고 수정하기
- 코드가 다른거 쳐보고 구글에도 검색해 왜 다른지 알아보기
//데이터 받아오기
// var data = intent?.getParcelableExtra<MyItem>(Contants.Item_OBJECT)?:
// //?: 로 null일 경우 앱이 꺼지지 않게 넣는 데이터
// MyItem(R.drawable.sample1,"제목","위치","내용","아이디",1000,1,1)
//받은 데이터 집어넣기
// binding.imgTitle.setImageResource(data.aImg)
기존에 썼던 코드인데 해설본에는
private val data : MyItem? by lazy {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
intent.getParcelableExtra(Contants.Item_OBJECT,MyItem::class.java)
}else {
intent.getParcelableExtra<MyItem>(Contants.Item_OBJECT)
}
}
binding.imgTitle.setImageDrawable(data?.let {
ResourcesCompat.getDrawable(
resources,it.aImg,null
)
})
이렇게로 받아왔다. 대체 위에 저건 왜 들어가는 것이며, 밑에는 setImageDrawable을 사용했는데 setImageResource와 다른점이 무엇인지 찾아봤다.
우선 setImageResource는 res폴더에 있는 리소스만 사용 가능하다고 한다.
그리고 setImageDrawable은 다른데서 파일을 읽고 이미지를 세팅할 떄 사용하므로 이게 더 범용적인 듯 하다.
일단 이것이 뭔지만 알아보고 위에거도 좀 찾아보았다.
Tiramisu 이후 버전의 코드와 이전 버전의 코드가 다르기에 저렇게 써주는 것이라고 한다.
그리고 마지막으로 setImageDrawable을 찾아보았지만 일단 왜 저리 들어가는지는...내일 튜터님께 찾아가봐야겠다.
'내일배움캠프' 카테고리의 다른 글
본 캠프 39일 차 (0) | 2024.01.15 |
---|---|
본 캠프 38일 차 (1) | 2024.01.12 |
본 캠프 36일 차 (1) | 2024.01.10 |
본 캠프 35일 차 (0) | 2024.01.09 |
본 캠프 34일 차 (1) | 2024.01.08 |