반응형

Kotlin 50

[Kotlin] How To Enter Text in TextView and EditText

0. 미리보기 1. TextView 2. EditText 0. 미리보기 // TextView findViewById(R.id.tvTitle).text = "안녕하세요" // EditText findViewById(R.id.etTitle).setText("안녕하세요") 1. TextView TextView에서는 조회한 뷰 클래스에 text 값을 입력해 주면 됩니다. findViewById(R.id.tvTitle).text = "안녕하세요" 2. EditText EditText의 경우 TextView처럼 텍스트를 입력하면 아래와 같은 오류가 발생합니다. EditText에서 text는 Editable이 입력되어야 하기 때문인데, 이 경우 당황하지 말고 그냥 setText를 써주면 해결됩니다. findViewB..

[Kotlin] How To Place Overlapping using Frame Layout

최근에 View의 배치를 하는데, 아래와 같은 부분이 있었습니다. 왼쪽에 보이는 "테"라는 TextView와 "30일"일이라는 TextView가 겹쳐져야 하는데 이를 위해서 어떻게 할 수 있을까요? 답은 FrameLayout에 있습니다. 1. 관련 소스 ※ 처음 아이콘 처럼 되기 위해서는 style이나 background 등을 조정하여 맞춰주어야겠지만, 겹쳐 보이기 위한 최소한의 위치 조정을 위와 같이 적용하면 되기 때문에 적용하지 않았습니다. 2. 속성 설명 속성 내용 layout_width 해당 View의 너비 (match_parent인 경우 부모 View인 FrameLayout 너비 만큼 지정) layout_height 해당 View의 높이 (match_parent인 경우 부모 View인 Frame..

[Kotlin] How to Replace "registerForActivityResult"

1. Callback 변수 생성 2. Activity 이동 실행 3. 결과 반환 4. Callback 처리 오랜만에 안드로이드 개발을 하려고 보니, startActivityForResult가 Deprecated가 되었습니다. 그러면 어떻게 동일한 결과를 받아 와야 할까 하고 찾아보니 registerForActivityResult를 선언하여 사용하는 방법입니다. 1. Callback 변수 생성 // Callback 변수 private val callback = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> when (result.resultCode) { RESULT_OK -> { // TODO }..

[Kotlin] How to make an array of strings a string

1. 기본 문법 2. 사용 방법 1. 기본 문법 문자열 또는 숫자형 배열을 사용하다 보면 join을 해야 하는 경우가 많습니다. fun Sequence.joinToString( separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", transform: ((T) -> CharSequence)? = null ): String 속성 내용 separator 각 항목을 잇는 구분자 (기본값, 콤마(,)) prefix 첫 항목 앞에 입력 될 문자 postfix 마지막 항목 뒤에 입력 될 문자 limit 최대 출력 될 항목 개수 ..

[Kotlin] How to display Floated buttons on the screen

1. Floating Button이란? 2. build.gradle (app) 설정 3. layout xml에 호출 1. Floating Button이란? 앱에서 흔히 보이는 화면 위에 둥둥 떠있는 버튼을 보곤 합니다. 앱 위에 둥둥 떠있어서 그런지 Floating Button이라고 하기도 하는데, 이는 Material Design을 이용해서 쉽게 지정해 줄 수 있습니다. 2. build.gradle (app) 설정 ... dependencies { ... implementation 'com.google.android.material:material:' ... } material을 연결해 줍니다. 3. layout xml에 호출 ... 여기서 주의할 부분이 xmlns에서 정의한 app 부분입니다. 기본적..

[Kotlin] How to sort arrays in order

How to sort arrays in order 1. 객체 생성 2. 테스트 데이터 생성 3. 현재 데이터 출력 4. 오름차순 정렬 (Ascending) 5. 내림차순 (Descending) How to sort arrays in order 객체에 담긴 목록의 경우 정렬이 필요한 경우가 많습니다. 이 경우, 아래와 같이 오름차순과 내림차순으로 정렬 가능합니다. 메서드 내용 sortBy 특정항목 기준으로 내림차순 정렬합니다. sortByDescending 특정항목 기준으로 오름차순 정렬합니다. 1. 객체 생성 data class Product ( val name : String, val price : Int ) 상품명과 가격 정보를 갖는 데이터 모델 객체를 생성합니다. 2. 테스트 데이터 생성 val a..

[Kotlin] How to use a function in an array

1. 함수 2. Reverse 함수 3. 숫자형 배열 함수 사용 1. 함수 메서드 내용 first() 목록의 첫 번째 항목 last() 목록의 마지막 항목 indexOf(항목) 항목을 포함하는 인덱스 위치 (0부터 시작, 없으면 -1) count() 목록 내 항목의 개수 contains(항목) 해당 항목이 목록 내에 포함되어있는지 여부 (true:있음 / false:없음) joinToString() 목록을 구분자(def. 콤마(,))로 묶어줌 reserve() 목록 내 항목을 역순으로 정렬 average() 목록 내 항목 들의 평균 값 sum() 목록 내 항목 들의 합계 min() 목록 내 최소값 항목 max() 목록 내 최대값 항목 배열 함수 목록 val array = arrayListOf("서울", ..

[Kotlin] How to use "Ringtone"

1. Ringtone 객체 생성 2. Ringtone 실행 3. Ringtone 중지 1. Ringtone 객체 생성 class RingtoneActivity : AppCompatActivity() { private var ringtone : Ringtone? = null ... } Ringtone에 사용될 객체를 선언합니다. 2. Ringtone 실행 /** * @description 벨소리 시작 * @param context 컨텍스트 * @param packageName 패키지 명 (ex. com.test.app) * @param path 벨소리 경로 (test.mp3) */ fun startRingtone(context:Context, packageName:String, path:String){ /..

[Kotlin] How to use "For Loop"

1. 기본 문법 #1 2. 기본문법 #2 // 기본 문법 #1 for (i in 1..n) { // TODO } // 기본 문법 #2 for (item in list) { // TODO } 1. 기본 문법 #1 특정 숫자까지의 반복문을 사용하고 싶은 경우 아래와 같이 사용 가능합니다. 만약 2000년부터 2023년까지의 연도를 출력하고 싶은 경우 for (year in 2000..2023) { Log.d("TAG", "this year is $year") } 위와 같이 2000년부터 2023년까지 출력됨을 확인할 수 있습니다. 만약 역순으로 출력하고 싶다면 아래와 같이 출력 가능합니다. for (year in 2023 downTo 2000) { Log.d("TAG", "this year is $year"..

[Kotlin] How to move a map in "Naver Map"

사용 방법 onMapReady 사용 방법 val cameraUpdate = CameraUpdate.scrollTo(LatLng(위도, 경도)) naverMap.moveCamera(cameraUpdate) Kotlin에서 NaverMap을 사용하는 경우, 지도의 위치 이동은 카메라 객체를 통해서 이동하게 됩니다. onMapReady naverMap은 아래와 같이 onMapReady를 통해서 가져올 수 있습니다. class CustomActivity : AppCompatActivity(), OnMapReadyCallback { ... private lateinit var naverMap : NaverMap ... /** * @description Naver Map이 준비된 경우 */ override fun ..

반응형