1. 터치와 키 이벤트터치 이벤트앱의 화면에서 발생하는 사용자 이벤트는 터치(touch)입니다. 터치란 손가락으로 화면을 잠시 눌렀다가 떼는 행위를 말합니다. 앱은 사용자의 터치를 인식하고 화면을 손가락으로 눌렀는지 떼었는지 스와이프(화면에 손가락을 댄 상태로 쓸어넘기는 동작을 말함) 했는지에 따라 알맞게 동작하도록 구현합니다. 이처럼 앱의 화면에서 발생하는 사용자의 터치 이벤트를 처리하고 싶다면 액티비티 클래스에 터치 이벤트의 콜백 함수인 onTouchEvent()를 선언하면 됩니다. 콜백 함수란 어떤 이벤트가 발생하거나 시점에 도달했을 떄 시스템에서 자동으로 호출하는 함수를 말합니다.class MainActivity : AppCompatActivity() { ... override fun ..
1. 전화 앱의 키패드 화면 만들기 이미지 준비 레이아웃 XML 작성 앱 실행 후 화면 확인
1. 화면을 구성하는 방법액티비티-뷰 구조안드로이드 앱의 기본 구조는 컴포넌트를 기반으로 합니다. 즉, 안드로이드 앱은 액티비티, 서비스, 브로드캐스트 리시버, 콘텐츠 프로바이더와 같은 컴포넌트를 적절하게 조합해서 만듭니다. 그런데 이 중에서 화면을 출력하는 컴포넌트는 액티비티뿐입니다. 결국 앱에서 화면을 출력하고 싶다면 액티비티를 만들어야 하고 이렇게 만든 액티비티에서 출력한 내용이 기기의 화면에 보이는 것입니다. 액티비티는 화면을 출력하는 컴포넌트일 뿐이지 그 자체가 화면은 아닙니다. 따라서 액티비티에서 적절한 화면을 구성해야 합니다. 별도로 화면 구성을 하지 않고 단순히 액티비티만 실행하면 텅 빈 흰색 화면만 보입니다. 만약 화면에 내용을 표시하려면 뷰 클래스를 이용하여 구성해야 합니다. 예를 들어..
1. 람다 함수람다 함수람다 함수는 코틀린뿐만 아니라 많은 프로그래밍 언어에서 제공하는 익명 함수 정의 기법입니다. 람다 함수는 주로 함수를 간단하게 정의할 때 이용하며 람다식이라고도 합니다. 코틀린으로 프로그램을 작성하다 보면 람다 함수를 많이 쓰는데, 이는 코틀린에서 고차함수를 지원하기 때문입니다. 고차함수는 매개변수나 반환값으로 함수를 이용하는데, 람다 함수는 주고받을 함수를 간단하게 정의할 때 사용합니다. 즉, 람다 함수는 그 자체도 가치가 있지만 고차 함수를 이해하고 사용하려면 꼭 알아야 합니다. 일반적으로 함수는 fun 키워드로 선언합니다. 그런데 람다함수는 fun 키워드를 이용하지 않으며 함수 이름이 없습니다. 람다 함수는 중괄호 { } 로 표현합니다.{ 매개변수 -> 함수 본문 } 람다 함..
1. 클래스와 생성자 클래스 선언코틀린에서 클래스는 class 키워드로 선언합니다. 아래 코드에서 class User 부분이 클래스의 선언부이며 중괄호 { } 영역이 본문입니다. 만약 클래스의 본문에 입력하는 내용이 없다면 { }를 생략할 수 있습니다.class User { } 클래스의 멤버는 생성자, 변수, 함수, 클래스로 구성됩니다. 이 중에서 코틀린의 생성자는 constructor 라는 키워드로 선언하는 함수입니다. 그리고 클래스 안에 다른 클래스를 선언할 수도 있습니다.class User { var name = "kkang" constructor(name: String) { this.name = name } fun someFun() { println(..
1. 코틀린 언어 소개 코틀린은 젯브레인스(JetBrains) 에서 오픈소스 그룹을 만들어 개발한 프로그래밍 언어입니다. 코틀린은 2011년 처음 공개되었으며 2017년 구글에서 안드로이드 공식 언어로 지정하면서 유명해졌습니다. '자바'가 인도네시아 섬 이름을 따와서 사용했듯이 자바를 대체할 목적으로 만든 '코틀린'도 러시아 섬 이름에서 유래했습니다. 코틀린으로 안드로이드 앱을 개발할 수 있는 것은 자바의 가상 머신인 JVM에 기반을 둔 언어이기 때문입니다. 즉, 코틀린으로 작성한 프로그램은 JVM에서 실행할 수 있습니다. 코틀린은 분명 자바와는 다른 언어입니다. 자바는 확장자로 .java를 사용하지만 코틀린은 .kt 를 사용합니다. 하지만 코틀린 컴파일러(kotlinc)가 .kt 파일을 컴파일하면 자바..
안드로이드는 리눅스 커널을 기반으로 구글에서 제작한 모바일 운영체제입니다. 구글은 2008년 안드로이드 1.0 버전을 출시한 이후 새버전을 계속 내놓아 전 세계 모바일 플랫폼 시장의 70~80%를 차지하고 있습니다. 1. 안드로이드 소개 안드로이드는 어떤 특징이 있을까?안드로이드는 공개 운영체제인 리눅스를 기반으로 합니다.안드로이드 앱은 자바나 코틀린 언어를 이용해 개발합니다.안드로이드 운영체제의 주요 부분과 라이브러리, 구글에서 만든 앱 등의 코드는 대부분 공개되어 있습니다.안드로이드 스마트폰은 구글뿐 아니라 여러 제조업체에서 만들 수 있습니다.안드로이드 앱은 구글의 플레이 스토어뿐만 아니라 다양한 방법으로 사용자에게 배포할 수 있습니다.안드로이드 플랫폼에서는 모든 응용 프로그램이 평등하다는 사상을 바..
1. 안드로이드 스튜디오 설치하기 안드로이드 스튜디오는 안드로이드 전용 앱을 개발하는 도구로 구글이 2013년에 처음 발표했습니다. 안드로이드 개발자 사이트에 접속한 후 안드로이드 스튜디오를 내려받아 설치하면 안드로이드 앱을 개발할 기본 준비는 끝납니다. https://developer.android.com/?hl=ko Android 모바일 앱 개발자 도구 - Android 개발자 | Android DevelopersDiscover the latest app development tools, platform updates, training, and documentation for developers across every Android device.developer.android.com 기본적으로 N..