상상하라 그리고 현실로 만들어라.

상상하는 모든 것이 미래다.

반응형

Kotlin과 Android/Android 20

코틀린으로 안드로이드 타이머 앱 구현하기

안녕하세요, 반갑습니다! 오늘은 스레드(Thread) 포스팅에 이어 스레드를 사용하는 대표적인 앱을 하나 만들어보겠습니다. Timer 는 간단하면서도 많은 앱에 쓰이고 있이는 기능이지요. 코틀린에서 제공하는 timer 를 통해 보다 쉽게 만들 수 있습니다. 쉬우니까 같이 한번 만들어 보시면 좋을 것 같습니다. 타이머(Timer) 구현하기 1. 화면 배치 역시 화면 구성부터 해야겠지요? 간단하게 스탑워치를 만들어봤습니다. 시작버튼과 정지버튼, 그리고 초기화 버튼을 배치했습니다. 2. 코틀린의 timer 스레드 Thread 를 상속받아 백그라운드에서 시간을 측정하는 방법도 있습니다만, 훨씬 간단한 코틀린에서 제공하는 Timer 를 이용하겠습니다. 타이머 앱의 기본 구조는 아래의 코드와 같습니다. timer(..

코틀린으로 안드로이드 스레드(Thread) 한방에 끝내기

안녕하세요, 반갑습니다! 한 개의 프로그램(프로세스) 에서는 많은 스레드를 동시에 처리할 수 있지요. 그리고 프로세스의 메모리 또한 공유합니다. 프로세스로부터 각 메모리를 할당 받은 스레드는 독립적으로 실행됩니다. 안드로이드 역시 1개의 앱(프로그램)에서 여러개의 스레드를 사용할 수 있는데요. 예를 들어 음악을 들을 때, 다운로드를 받을 때, 푸쉬 알림 등 이 모두 스레드를 이용한 기능입니다. 오늘은 기본적인 스레드의 생성방법과 스레드내에서 위젯 등 UI에 결과를 반영하는 방법에 대해 정리해보겠습니다. 스레드(Thread) & UI 에 접근하기 1. 메인 스레드 액티비티를 포함해 모든 컴포턴트가 실행되는 오직 1개만 존재하는 스레드입니다. 그래서 메인 스레드엔 제약사항이 몇 가지 있습니다. 화면의 UI ..

코틀린으로 안드로이드 프래그먼트 데이터 전달하기

안녕하세요, 반갑습니다! 현존하는 안드로이드 앱 중에서 프래그먼트를 안쓰는 앱이 있을까요? 아마 대부분 프래그먼트를 사용하는 앱일 것입니다. 주로 뷰페이저 또는 탭 레이아웃에 많이 쓰이죠 프래그먼트(Fragment) 는 하나의 액티비티에 각 화면을 분할, 독립적인 코드로 구성하는 것을 말합니다. 그래서 액티비티와 프래그먼트, 프래그먼트와 또 다른 프래그먼트끼리 통신을 할 필요가 있습니다. 어떻게 할 수 있을까요? 바로 시작합니다! 액티비티 프래그먼트 A프래그먼트 액티비티 B프래그먼트 데이터 전달하기 1. 프래그먼트 띄우기 데이터를 전달하기 위해서 간단한 앱을 만들겠습니다. 이미 구성하신 분들은 2번부터 봐주세요~ 아래와 같이 프래그먼트 클래스 및 .xml 를 먼저 만들어주..

안드로이드 프래그먼트 생명주기

안녕하세요, 반갑습니다! 안드로이드는 액티비티(Activity) 로 화면을 구성하지만, 프래그먼트(Fragment)를 이용해서 다양한 화면을 하나의 액티비티로 나타낼 수 있습니다. 그래서 액티비티와 비슷하게 생명주기라는 것을 가지게 됩니다. 다만, 한가지 차이가 있다면 각 시점에 콜백 메서드가 호출되지 않습니다. 프래그먼트가 있는 액티비티가 전면에 있다면, 생성에 관련된 메서드가 한번에 호출되는 것이죠. 전체 흐름입니다. 액티비티와 다르게 엄청 기네요. 크게 두 부분으로 나누겠습니다. 생성 관련 메서드 1. onAttach() 액티비티(Activity)에서 프래그먼트 매니저를 통해 Commit 되는 순간 호출되는 메서드입니다. 단순히 var fragment = Fragment() 와 같이 생성자를 이용해..

안드로이드 액티비티 생명주기

안녕하세요, 반갑습니다! 안드로이드 앱을 구성하는 액티비티는 어떻게 동작하는 걸까요? 화면이 나타나거나, 화면이 전환될때, 혹은 사라지거나 종료될때. 시스템은 각 시점에 특정 함수들을 호출합니다. 그리고 그 흐름에 따라 앱이 작동하는 것인데요. 안드로이드 개발자라면 반드시 알아야 할, 액티비티 생명주기 이 액티비티 생명주기를 정확히 알고 각 함수는 어떤 역할을 하는지, 어떻게 작성해야 앱을 효율적으로 만들 수 있는지! 한번 살펴보겠습니다. 전체적인 흐름입니다. 1. onCreate() 앱이 시작하게 되면 가장 먼저 호출되는 함수입니다. 액티비티가 생성되는 함수로써 이 함수는 최초 1번만 호출됩니다. 그리고 실제로 개발자가 가장 많이 코드를 작성하는 부분이죠. 2. onStart() 화면(View) 가 사..

반응형