본문 바로가기
반응형

분류 전체보기572

[Kotlin] 리니어 레이아웃(LinearLayout) 예제 리니어 레이아웃은 수평 또는 수직 방향으로 정렬할 수 있는 레이아웃 입니다. 사용하기 쉬워서 간단한 레이아웃은 이것으로 다 만들 수 있습니다. 필수 속성 layouut_width : 가로 사이즈 layout_height : 세로 사이즈 orientation : 방향 (horizontal, vertical) Activity 만들기 - empty activity를 하나 생성합니다. 이름은 LinearTestActivity 기본적으로 생성되는 레이아웃이 ConstraintLayout 이므로, LinearLayout 으로 변경합니다. res/layout/activity_linear_test.xml > Component Tree > ConstraintLayout > Convert view... 클릭 아래와 같은 .. 2023. 7. 25.
[Kotlin] Android Java 와 Kotlin 몇가지 문법 비교 Java Integer.parseInt(someValue) Kotlin someValue.toInt() Java if ( "100".equals(someValue) ) { } Kotlin if( someValue == "100" ) { } Java Object someValue = new String("hello"); if ( someValue instanceof String ) { // OK } Kotlin var someValue: Any = "hello" if ( someValue is String ){ // OK } Java class MainActivity : AppCompatActivity() { Kotlin class MainActivity : AppCompatActivity() { Java.. 2023. 7. 24.
[Kotlin] class static 변수 사용하기 companion object Java 에서는 public static final .... 로 썼던게 kotlin 에서는 어떻게 사용쓰일지 JAVA // 선언 public class MainActivity { public static final int bonus = 100; } // 사용 MainActivity.bonus Kotlin // 선언 class MainActivity : AppCompatActivity() { companion object { const val bonus: Int = 100 } } // 사용 MainActivity.bonus 2023. 7. 24.
[Kotlin] 개발할때 알아야할 LifeCycle 자세한 내용은 공식 설명을 확인하시고, 여기에서는 간단하게. 어떨때 어떤 함수가 호출되는지 알아보겠습니다. 우선 Activity 를 하나 만들었습니다. package com.example.test01 import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import com.example.test01.databinding.ActivityLifeBinding class LifeActivity : AppCompatActivity() { val tag = "LifeActivity" lateinit var binding: ActivityLifeBinding override fun onCreate.. 2023. 7. 24.
[Kotlin] 새로운 화면(Activity) 추가하고 데이터 주고받기 MainActivity 가 있을 때, 버튼을 눌러서 또 다른 Activity를 띄워보고 데이터를 전달하고, 두번째 엑티비티에서 변경한 결과도 받아오는 예제를 해보겠습니다. 안드로이드 스튜디오에서 새 프로젝트를 만들고, EmptyActivity 를 선택 후 생성하면, 기존 화면(MainActivity)이 생성됩니다. 그리고 ViewBinding 으로 소스를 수정합니다. [Kotlin] findViewById 대신에 View binding 참고 새 화면(Activity) 생성 SecondActivity 를 만들어야겠죠. MainActivity 와 같은 Package에서 우클릭 > New > Activity > Empty Activity 생성되는 경로는 달라도 상관없습니다 Activity정보를 입력하고 생성합.. 2023. 7. 23.
[Kotlin] findViewById 대신에 View binding View Binding findViewById 대신에 XML 레이아웃 파일에 있는 ID를 직접 참조할 수 있습니다. 참고: 뷰 결합은 Android Studio 3.6 Canary 11 이상에서 사용할 수 있습니다. 1. build.gradle 에 viewBinding 설정 build.gradle (Module: YourApp.app) 의 파일을 열어서 android { } 부분에 아래 코드를 추가합니다. android { ...생략... viewBinding { enabled = true } } layout 파일의 내용이 다음과 같고, 이름은 activity_main.xml 이라고 했을 때 layout 파일명에 따라서 결합 클래스 이름이 결정됩니다. 지금은 activity_main.xml 이라서 Ac.. 2023. 7. 22.
[Kotlin] 코틀린 기본 문법 5 (배열 응용) 배열 정렬 listOf() / mutableListOf() val list = listOf(1, 5, 4, 6, 3, 2) val sorted = list.sorted().reversed() println("sorted : $sorted") // sorted : [6, 5, 4, 3, 2, 1] val list2 = mutableListOf(1, 5, 4, 6, 3, 2) list2.sort() list2.reverse() println("sorted : $list2") // sorted : [6, 5, 4, 3, 2, 1] sortedWith val list = listOf("kevin", "steve", "john", "mark", "jadon") val alphabetOrder = list.sort.. 2023. 7. 20.
[Kotlin] 코틀린 기본 문법 4 (조건문, 반복문) 조건문 val number = 10 if (number > 0) { println("양수입니다.") } else if (number { // 값1에 대한 처리 } 값2 -> { // 값2에 대한 처리 } else -> { // 모든 조건에 해당하지 않을 때 처리 } } 예제 val day = "월" when (day) { "월", "화", "수", "목", "금" -> pri.. 2023. 7. 20.
[Kotlin] 코틀린 기본 문법 3 (함수) 함수 정의 (Function Definition): Kotlin에서 함수를 정의할 때는 fun 키워드를 사용 fun greet() { println("Hello, Kotlin!") } 매개변수 (Parameters): fun greet(name: String) { println("Hello, $name!") } 함수의 반환 자료형 표기 (Function Return Type Annotation): Kotlin에서 함수의 반환 자료형을 표기하기 위해서는 함수 정의 시 콜론(:) 다음에 반환 자료형을 명시합니다. fun multiply(a: Int, b: Int): Int { return a * b } 함수의 반환 자료형을 추론할 수 있는 경우에는 반환 자료형을 생략할 수도 있습니다. Kotlin 컴파일러는.. 2023. 7. 20.
[Kotlin] 코틀린 기본 문법 2 (배열의 모든 것) 개발하면서 배열은 정말 많이 사용됩니다. 코틀린에서 배열 사용 방법에 대해서 작성 해보겠습니다. 배열 선언과 초기화 Kotlin에서 배열을 선언하고 초기화하는 방법은 다음과 같습니다: // 배열 선언 val numbers: Array // 배열 초기화 numbers = arrayOf(1, 2, 3, 4, 5) numbers[0] = 10 // [10, 2, 3, 4, 5] // List val list: List = listOf(0, 1, 2) print(list) // [0, 1, 2] list[0] = 10 // 오류 발생 ! list.set(0, 10) // 오류 발생 ! Array 는 값 변경 가능 List 는 immutable 이므로 위와 같이 값 변경이 안됨. mutableListOf 로 선언.. 2023. 7. 20.
728x90
반응형