들어가며
어제까지는 기본중에 기본인 레이아웃과 인텐트 그리고 에디트 테스트 텍스트뷰 버튼 등에 대해서 배웠습니다 그중에서 핵심 기능들을 한번 다뤄볼 생각입니다! 약간의 복습 느낌이쥬?! 호호 워낙 많이 사용하다보니 이렇게 집고 넘어가는 것도 좋은 방법인 것 같습니다
인덴트
인덴트는 엑티비티 간의 이동을 도와주는 객체(클레스) 입니다. 보통 로그인 창에서 회원가입 창으로 넘어 갈때 라던지 상품 보기에서 장바구니로 넘어갈때 화면이 전환 될때가 있습니다! 그때 주로 사용하는 객체라고 생각하시면 좋을 것 같아요
val intent = Intent(this, TextActivity::class.java)
startActivity(intent)
위 코드는 TextActivit로 화면 전환을 하기 위해 인텐트를 사용하는 코드입니다. 뭔가 코드를 보면 직관적인 것 같습니다
Intent(현재 엑티비티, 이동할 엑티비티) 로 보이고 그 인텐트를 startActivity 스타트 시키겠다! run하겠다! 그런 느낌으로 보이는데요? ㅎㅎ 확실히 코틀린이라는 언어는 코드가 직관적이라서 좋은 것같습니다
인텐트 값 넘기기
인텐트를 이용해 화면을 전환하는데 현재 엑티비티의 값을 이동할 엑티비티로 넘기고 싶을때가 있습니다! 예를 들면 상품 카테고리에서 상품을 장바구니로 담고 이동하기를 누르는순간 그 때 장바구니에 내가 선택한 상품을 들고 가야 하는 경우가 있습니다! 그럴때 사용하는 방법? 으로 put / get Extra 함수가 있습니다!
putExtra("test","hi)
getStringExtra("test") // hi
다음과 같이 이동하고자 하는 엑티비티로 값을 보낼려면 키 / 벨류 타입으로 값을 보내게 됩니다. 키는 중복이 있어서는 안되며 벨류로는 여러가지 타입이 들어갑니다! String int list등 다양한 자료형을 지원합니다
보내고 받는것도 참 간단 하쥬?!
어제 배운 많은 것들중에서 인텐트가 가장 중요하다고 생각해서 정리를 다시 해봤습니다 이젠 내일 배울 로또 당첨 어플을 만들기 위해서 컬랙션 객체를 살짝만 맛만 보도록 하겠습니다
list / map / set
자바에서도 많이 본 객체들이죠?! 프로그래밍에서는 뺴놀수가 없는 객체 들입니다. 리스트는 같은 자료형을 여러번 보여주거나 한번에 처리하고 싶을때 많이 사용하고 맵은 키와 밸류로 이루어 져있어 맵 안에 있는 값을 참조하기 쉬울 뿐더러 중복 방지도 해줍니다! set은 순서는 없지만 중복을 허용하지 않는 함수로 유명합니다
로또 당첨 어플을 만들기 전에 이러한 것들을 미리 공부했는데 아마 로또는 중복이 있으면 안되기 때문에 컬렉션을 살짝 맛 보는 것 같습니다
list
val readOnlyList = listOf<String>() // 변경 불가 read only
val readWriteList = mutableListOf<String>() // 변경 가능
val emtpyList = emtpyListOf<String>() // 비어 있는 리스트 (초기화)
리스트를 초기화하는 기본적인 방법입니다! 자바에서 많이보던 listOf 뭔가 익숙합니다 그렇지만 listOf는 변경 불가한 즉 read only 읽기만 가능한 리스트로 만든다는 뜻입니다!! 저도 이 정의를 모르고 한참 고생했었을때가....
mutableListOf는 변경 가능한! 읽기도 가능하겠죠? ㅎㅎ 그런 리스트입니다 그래서 자바에서 사용하던 new ArrayList가 여기에 해당 될것 같습니다
emtpyList 는 한마디로 초기화 즉 리스트로 초기화 한다는 이야기입니다 빈값으로 초기화를 한다는 말은 나중에 수정도 가능하다는 말이겠죠?
이렇게 코틀린 비어있다는 것을 직관적으로 알려주기위해 empty 라는 함수도 만들어주고 역싀... 갓틀린...
set과 map 도 수정 불가 초기화 수정 가능 초기화 등이 제공되고 있으며 mutable 를 어떻게 적절하게 사용하느냐에 따라 코드 가독성이 많이 갈릴 것 같습니다
이렇게 컬렉션과 어제의 주요 기능 인텐트를 살펴 보았습니다. 이해하기가 역시 어려웠지만 이렇게 포스팅 하면서 한번더 복기하니 좋은 것같습니다!
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발#패스트캠퍼스후기#30개 프로젝트로 배우는 Android 앱 개발 with Kotlin 초격차 패키지 Online
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'패스트캠퍼스 30일챌린지' 카테고리의 다른 글
[안드로이드] 패스트캠퍼스 챌린지 13일차!! (0) | 2021.09.18 |
---|---|
[안드로이드] 패스트캠퍼스 챌린지 12일차!! (0) | 2021.09.17 |
[안드로이드] 패스트캠퍼스 챌린지 10일차!! (0) | 2021.09.15 |
[안드로이드] 패스트캠퍼스 챌린지 09일차!! (0) | 2021.09.14 |
[안드로이드] 패스트캠퍼스 챌린지 08일차!! (0) | 2021.09.13 |
댓글