Programming
[Android] Action Bar
Action Bar 숨기기 1. style.xml에서 제거 false true 2. Kotlin파일에서 제거 val actionBar: ActionBar? = supportActionBar if (actionBar != null) { actionBar.hide() }
[Android] Fragment
Fragment는 동작 또는 Activity 내에서 UI의 일부를 나타낸다. 여러 개의 프래그먼트를 하나의 액티비티에 조합하여 창이 여러 개인 UI를 구축할 수 있으며, 하나의 프래그먼트를 여러 액티비티에서 재사용할 수 있다. 프래그먼트를 액티비티 레이아웃의 일부로 추가하는 경우, 이는 액티비티의 뷰 계층 내부의 ViewGroup안에 있으며, 해당 프래그먼트가 자신의 뷰 레이아웃을 정의한다. 프래그먼트를 액티비티 레이아웃에 삽입하려면 해당 프래그먼트를 액티비티의 레이아웃 파일에서 요소로 선언하거나, 애플리케이션 코드에서 이를 기존의 ViewGroup에 추가하면 된다.그러나 프래그먼트가 액티비티 레이아웃의 일부분이어야만 하는 것은 아니다. 나름의 UI가 없는 프래그먼트도 액티비티를 위한 보이지 않는 작업자..
[Kotlin] open
상속이란 부모의 자원을 자식이 상속받아 사용하는 것 자바에서 상속 방법 class Child extends + '부모 클래스' class Parent {} class Child extends Parent {} 코틀린에서 상속 방법 class Child : '부모 클래스' 여기서 자바와 다르게 코틀린은 부모 클래스 앞에 open 키워드를 사용한다. open class Parent {} class Child : Parent() {} 만약 open이라는 키워드를 사용하지 않고 코드를 작성할 경우 This type is final, so it cannot be inherited from 이라는 에러 문구가 나온다. 코틀린은 open 키워드가 없을 경우 다른 곳에서 상속 받지못하는 final class로 정의되기..
[Git] CRLF will be replaced by LF
git config --global core.autocrlf true input
[Android] Intent
안드로이드 어플리케이션을 구성하는 네 가지 구성요소에는 Activity, Service, Broadcast Receiver, Content Provider가 있다. Intent란 이러한 어플리케이션 구성요소간에 작업 수행을 위한 정보를 전달하는 역할을 한다. 명시적 인텐트와 암시적 인텐트 인텐트는 명시적 인텐트(Explicit Intent)와 암시적 인텐트(Implicit Intent)로 구분할 수 있다. 인텐트에 클래스 객체나 컴포넌트 이름을 지정하여 호출될 대상을 확실히 알 수 있는 경우에는 명시적 인텐트가 필요하고 호출될 대상의 속성들을 지정했지만 호출될 대상이 달라질 수 있는 경우에는 암시적 인텐트가 필요하다. 명시적 인텐트 명시적 인텐트는 인텐트에 클래스 객체나 구성요소 이름을 지정하여 호출할 ..
[Kotlin] 스코프함수
스코프함수는 함수형 언어의 특징을 조금 더 편리하게 사용할 수 있도록 기본 제공하는 함수들이다. 클래스에서 생성한 인스턴스를 스코프함수에 전달하면 인스턴스의 속성이나 함수를 좀 더 깔끔하게 불러 쓸 수 있다. apply 인스턴스를 생성한 후 특정 변수에 할당하기 전에 초기화 작업을 수행할 때 많이 사용 apply함수 내의 모든 명령이 수행되고나면 새로 생성된 인스턴스를 반환한다. fun main(){ val book1 = Book("Kotlin", 10000).apply{ //기존에는 인스턴스 함수를 사용해 속성을 변경해주었다. //book.name = "Kotlin 1" //book.discount() //apply 함수에서는 참조연산자를 통해 프로퍼티에 접근하지 않고 인스턴스 생성과 동시에 바로 초기..
[Android] Broadcast Receiver
Broadcast Recevier는 안드로이드 컴포넌트중 하나로 시스템 이벤트를 수신하는 역할을 한다. 예를 들어 스마트폰에서 전원 충전, 전원 충전 해제, 비행기 모드 돌입, 애플리케이션 설치 완료 등의 다양한 시스템 이벤트들이 있다. 안드로이드 시스템에서 어떤 이벤트가 발생했을때 시스템은 "system broadcast" 라는 메세지를 보낸다. 이때 특정 이벤트가 발생한 것을 내 앱에서 알고 싶을때 Broadcast Receiver 를 통해 메세지를 받을 수 있다. Broadcast의 종류 ACTION_BOOT_COMPLETED 부팅이 끝났을 때 (RECEIVE_BOOT_COMPLETED 권한 등록 필요) ACTION_CAMERA_BUTTON 카메라 버튼이 눌렸을 때 ACTION_DATE_CHANGE..
Git 명령어
이름, 이메일 config git config --global user.name "name" git config --global user.email "email" 디렉토리 변경 cd "path" 현재 디렉토리에 있는 파일 및 폴더 확인 ls 현재 디렉토리에 local repository 생성 git init remote repository 내려받기 git clone "repository address" remote repository 연동 git remote add "remote repository name" "github repository url" remote repository 이름 변경 git remote rename "old name" "new name" remote repository 삭제 g..