본문 바로가기

분류 전체보기109

안드로이드 코틀린 editText 자동 focus 막기 안드로이드 editText 자동 focus 막기 레이아웃 클릭시 editText에 자동으로 focus가 가는 현상을 막아본다 HTML 삽입 미리보기할 수 없는 소스 EditText는 기본적으로 자동으로 포커스(Focus)가 주어진다. 그래서 EditText가 있는 창이 열리면 키보드가 자동으로 올라오게 된다. 애초에 키보드가 자동으로 올라오게 하고 싶으면 그냥 원래 그대로 사용하면 되는데 경우에 따라 자동 포커스를 막아야 할 때가 있다. 이 현상을 막으려면 xml 코드에 딱 2줄만 추가해주면 된다. android:focusable="true" android:focusableInTouchMode="true" 어디에 추가하느냐? 일반적으로는 상위 레이아웃에 추가한다. 아니면 다른 데 원하는 곳에 추가해도 된.. 2023. 2. 14.
안드로이드 OutOfMemoryError: Java heap space 오류 해결 방법 안드로이드 OutOfMemoryError: Java heap space 오류 해결 방법 OutOfMemoryError: Java heap space 발생 원인 OutOfMemoryError: Java heap space 문제 해결 방법 HTML 삽입 미리보기할 수 없는 소스 OutOfMemoryError: Java heap space 발생 원인 일반적으로 개인 프로젝트를 할 때는 자주 만나기 힘든 에러이다 그 이유는 Heap 영역의 공간이 부족해서 발생하는데 프로젝트 내에 큰 파일(Res, Raw)이 있을 때 발생한다 그렇기 때문에 해당 파일들을 최적화 하던가 해서 해결하는 방법도 있지만 시간도 오래 걸리고 해야할 일도 많기 때문에 쉽지 않다 하지만, Heap 영역을 늘려서 해결하는 방법이 있는데 해당 .. 2023. 2. 4.
안드로이드 라이브러리 만들고 jitpack으로 배포하기 안드로이드 라이브러리 만들고 jitpack으로 배포하기 안드로이드 스튜디오를 사용해서 나만의 라이브러리 만드는 방법 만든 라이브러리를 로컬 환경에서 사용하는 방법 만든 라이브러리를 jitpack에 배포하는 방법 HTML 삽입 미리보기할 수 없는 소스 라이브러리 만들기 1. 일반적인 방법으로 빈 Activity가 들어있는 프로젝트를 생성한다 2. 라이브러리가 될 모듈을 새롭게 생성한다 최상위 위치에 새롭게 모듈을 만들어준다 패키지명이 프로젝트의 패키지명과 동일한지 확인한다 생성한 모듈의 이름을 잘 기억해 둔다 3. 새로운 모듈 안에 새로운 파일을 넣어준다 라이브러리에 대한 정의가 들어갈 파일이다 4. 해당 파일 안에 간단한 동작을 집어넣는다 object TestLibrary { fun showToast(c.. 2023. 1. 29.
코틀린 확장함수 Scope함수 apply, with, let, also, run 이란? Scope함수 apply, with, let, also, run 사용방법 각 Scope 함수들의 내부 모습(apply와 with 차이도 설명) 사용 및 응용 예시 Scope 함수를 사용할 때 주의 사항 HTML 삽입 미리보기할 수 없는 소스 표준 확장함수들(Scope 함수)의 내부 모습 inline fun with(receiver: T, block: T.() -> R): R { return receiver.block() } inline fun T.also(block: (T) -> Unit): T { block(this) return this } inline fun T.apply(block: T.() -> Unit): T { block() return this } inline fun T.let(block:.. 2023. 1. 16.