반응형

안드로이드/이론관련 15

SharedPreferences (안드로이드)

SharedPreferences? SharedPreferences는 안드로이드에서 사용할 수 있는 내부 데이터 저장소이다. 개발 진행시 앱의 데이터들을 저장하고, 이들을 관리해야 하는 경우가 있을 수 있는데 이런 경우 중요하거나 많은 양의 데이터는 DB 또는 서버에 저장하는 방법을 사용할 수 있다. 하지만 간단한 데이터, 설정값 등을 DB를 상요해서 저장하기에는 애매하다고 생각할 수 있다. 이런 때를 위해서 안드로이드에선 SharedPreferences를 사용할 수 있다. SharedPreferences는 데이터를 파일로 저장하는데, 해당 파일은 앱 폴더 내부에 저장되기 때문에 앱을 삭제하면 당연하게도 이 데이터는 같이 삭제된다. (파일 형식은 XML) SharedPreferences는 데이터를 Key:..

LayoutInflater(안드로이드)

LayoutInflater? LayoutInfalter는 안드로이드에서 View를 만드는 방법 중 하나로, XML에 정의해둔 Recource들을 View형태로 반환해주는 역할을 한다. 즉, XML에 미리 정의해둔 틀을 실제 메모리에 올려주는 역할을 한다. 우리가 처음 프로젝트를 생성하고 가장 먼저 생기는 MainActivity.java파일에서 onCreate에 자동적으로 추가되는 setContentView(R.layout.activity_main)도 내부에서 LayoutInfalter가 실행되어 View들을 객체화하는 것이다. DataBinding또는 ViewBinding을 사용하면, LayoutInflater를 사용해서 View를 생성하는데, 실제 코드에선 아래와 같이 생성할 수 있다. class Ma..

Annotation(어노테이션)?

Annotation은 사전적으로 주석이라는 의미를 가지고 있다. 안드로이드 개발 중 @Deprected, @Override @Throws 등을 볼 수 있는데, 컴파일러에게 정보를 제공하거나, 실행 시 특정 코드를 자동적으로 생성해주도록 하는 역할을 하고 있다. Annotation은 기본적으로 Kotlin/Android에 내장되어있는 built in annotation, Annotation에 대한 정보를 나타내는 meta annotation, 개발자가 직접 만드는 cumstom annotation이 있다. 이번 글에선 Kotlin에서 사용하는 annotation을 몇 가지 알아보자. 1. @JvmName 2. @JvmStatic 3. @JvmField 4. @Throws 5. @JvmOverloads @J..

핸들러(Handler)

이번 글에서는 Handler에 대해서 알아보도록 하자. 이전에 Thread와 Mutli Thread에 관한 글을 포스팅한 적이 있다. Android에서도 Application의 성능을 위해 Multi Thread를 활용하는데, UI를 업데이트할 때는 반드시 Main Thread에서 작업을 수행한다. Main Thread는 Android에서 UI를 수정할 수 있는 유일한 Thread이기 때문에 UI Thread라고 부르기도 한다. Multi Thread환경에서 모든 Thread가 UI 업데이트 작업을 수행하게 되면 Thread간 교착상태(DeadLock)나 경쟁상태(Race Condition)등의 문제에 빠질 수 있기 때문이다. 여기서 둘에 대해 간단히 설명하자면 경쟁상태는 둘 이상의 Thread에서 하나..

프래그먼트 생명주기(Fragment Lifecycle)

이번 글에서는 Fragment Lifecycle에 대해서 알아보도록 하자. Fragment는 간단하게 Activity+View와 같은 개념이라고 볼 수 있는데, 관련 내용은 아래의 글에 있다. https://angangmoddi.tistory.com/244 액티비티(Activity)와 프래그먼트(Fragment) 이번 글에서는 Activity와 Fragment에 대해서 알아보자. Activity Activity는 Android의 4대 Component중 하나로 사용자에게 실제로 보이며, 사용자와 상호작용하는 화면을 말한다. Activity는 하나 이상의 View또.. angangmoddi.tistory.com 이 Fragment에는 Activity처럼 Lifecycle이 있는데, 일단 그림으로 확인해보도..

반응형