
android app 개발을 할 때, Life Cycle에 맞춰 개발을 하는 것이 중요하기 때문에 한번 정리해 보았습니다. 함수명 설명 다음에 호출하는 함수 Killable? onCreate() Activity가 생성되면 가장 먼저 실행, 전체 생명 주기동안 한번만 발생해야 하는 기본 어플리케이션의 시작로직을 실행하는 함수 onStart() No onStart() Activity가 사용자에게 표시되기 전에 호출되는 함수 UI를 관리하는 코드를 초기화 하는 함수 Activity가 화면에 나오면 onResume()을, 숨겨지면 onStop()을 차례로 수행합니다. onResume()/onStop() No onResume() Activity가 사용자와 상호 작용을 시작할 때 호출되는 함수 이때 Activity..
안드로이드를 공부하고, 코틀린으로 앱 개발을 하다 보니 Activity와 Fragment의 차이점이 무엇인지 궁금해져서 찾아보았다. Android Developers에서 정의하는 Activity에 대한 설명이다. 안드로이드 프레임워크가 제공하는 Activity는 사용자가 앱에 접근할 수 있도록 하며, 다양한 활동(작업)을 할 수 있도록 하는 일종의 페이지입니다. Activity는 화면의 기초가 되는 바닥이며, 그 위에 올라가는 것이 View 이다. 그래서 Activity가 존재해야 View가 존재할 수 있다고 한다. Fragment는 Activity와 View의 특성을 동시에 가지고 있지만 View와 마찬가지로 Activity가 있어야 존재할 수 있다. View Fragment Activity Activ..

1. Lamba 람다표현식은 우리가 마치 value 처럼 다룰 수 있는 익명 함수이다. 1) 메소드의 파라미터로 넘겨줄 수 있다. fun maxBy(a : Int) 2) return 값으로 사용할 수 있다. 3) 메소드를 표현하는, 함수의 다른 표현방식이다. 리턴을 써도 되고 안써도 되는데, 람다 표현식을 쓸때는 리턴을 생략하는 경우가 많다. 람다의 기본정의 val, var lamdaName : Type = {argumentList(a : Int) -> codeBody (어떻게 할건지.. 코드작성부분)} 왼쪽의(Int) -> Int 나 number:Int 를 써줘야 타입추론 가능 람다에서는 마지막에 있는 코드줄이 리턴 값이다. (String,Int) -> String 타입추론 예시 (출처: https:/..
Android App 개발 도중, 개인 레포지토리에서 브랜치를 만들어 작업하고, merge 했을 때,. idea에 있는 misc.xml, runConfiguration.xml 파일이 변경되어 merge Error가 발생해서 궁금증이 생겨 찾아보고 정리하게 되었다. (. gitignore 추가라고 적힌 파일들은 git에 보관되면 안 되는 파일들.) assetWizardSettings.xml - (. gitignore 추가) 이 파일은 Android Studio Wizard로 추가된 마지막 아이콘을 저장합니다. VCS에서 안전하게 제거 할 수 있습니다. (Vector Asset에 마지막으로 추가한 아이콘의 정보를 저장) caches - (.gitignore 추가) 폴더 그대로의 의미로 데이터 값을 미리 복사..

1. 함수 자바의 경우 앞에 리턴형을 써준다 void/ int 코틀린의 경우 변수명 뒤에 타입을 지정 아무것도 리턴형식이 없을 때 뒤에 Unit을 써준다. Void와 같은 의미 (리턴 타입이 없으면 안 써줘도 상관 없음) fun add(a: Int, b: Int) : Int { //자바와 다른점 앞 i가 대문자, 리턴 타입이 있을 경우 생략 하면 안됨 return a+b } 2. val vs var val = value (상수 변하지 않는 수) 한번 정의 되면 재정의 될 수 없음 단, 바로 할당하지 않을 경우 val e, var e 같은 형식의 선언은 사용될 수 없음 val e: String, Int 같이 선언 후 넘어가야한다. val c = 100 //이와 같은 경우 코틀린은 C 가 Int인 줄 알기 ..
Constraint Layout 을 설명하기 이전에 일단 Layout 이란 무엇인가? Layout 은 View를 담는 그릇 같은 것으로 생각하면 된다. Layout 들은 (Linear, Relative Frame ...) View Group을 상속 하고 있으며, View 는 화면을 구성하는 (Text View, Image View, Button, Recycler View ...) 각각의 컴포넌트들이다. Linear Layout 을 사용하여 View를 구성할 때, 수직과 수평방향을 만들고 싶을 때, Layout 2개를 만들고, Orietation: vertical, horizontal 을 사용하여 만들게 되는데 이러한 방식을 사용하면 퍼포먼스에 문제가 생기기 때문에 가급적 사용하지 않는편이 더 낫다. 그래..