Android: 150개의 글
사용자 입장에서 액티비티(Activity)를 실행하기 위해서는 단말기 화면의 앱 아이콘을 클릭하여 실행할 수 있습니다. 반면 개발자는 자신의 앱에서 다른 액티비티(Activity)를 호출하기 위해서는 인텐트(Intent)를 통해 실행할 수 있습니다. 이번 포스팅에서는 엑티비티(Activity)를 생성하고 호출하는 방법에 대해 알아보겠습니다. A 엑티비티와 B 액티비티 2개를 생성할 것입니다. 예제 구현의 최종 목표는 A 액티비티에서 특정 동작에 의해 B 액티비티를 실행하는 동작을 구현하는 게 목표입니다. 1. 엑티비티 XML 레이아웃 리소스 파일 추가 먼저 A 엑티비티와 B액티비티의 화면 UI를 정의할 xml 레이아웃 리소스 파일을 생성합니다. 경로는 /res/layout/ 경로 아래에 생성하도록 합니다..
스타일 리소스를 사용하면 화면에 배치되는 뷰(View)의 공통 속성을 편하게 지정할 수 있습니다. 아래 XML 레이아웃 리소스를 한번 살펴보겠습니다. ▼ TextView 3개가 배치되어 있고 각 TextView의 text, textColor, textSize 속성값을 모두 동일한 값을 사용하고 있습니다. 만약 저런 공통 속성을 가지는 뷰(View)가 앱 내에서 수십 개씩 된다면 일일이 속성을 지정하는 건 굉장히 힘든 일이 될 것입니다. 이때 재사용이 가능한 스타일 리소스를 추가하면 보다 간편하게 공통 속성을 지정할 수 있습니다. 1. 스타일 리소스(Style Resource) 파일 추가 스타일 리소스는 레이아웃 리소스와는 별개의 xml 파일에 추가합니다. /res/values/ 경로밑에 xml 리소스 파..
안드로이드에서는 빛의 3요소인 R(빨강) G(초록) B(파랑)로 구성된 색상 리소스 값을 추가하여 사용할 수 있습니다. RGB의 각각의 색상에 해당하는 값을 0~255까지 16진수로 표현한 값을 사용하며 다음과 같은 색상 표현 형식을 사용할 수 있습니다. 1. 색상(Color) 표현 방식 ▼ #으로 시작하며 RGB에 해당하는 각 색상을 0~15까지 16진수로 표현된 값으로 표현합니다. 예를 들어 빨강을 표현하고 싶다면 #F00 같이 사용하면됩니다. ▼ 위 형식에서 마찬가지로 각 색상값이 0~15까지의 16진수 값을 가지는데 투명도 값이 추가된 형태입니다. 투명도도 0~15까지 16진수 값을 가지며 수치가 커질수록 불투명해집니다. ▼ 이 표현 방식은 0~255까지 수치값으로 색상을 표현하기 때문에 더 다양..
저번 포스팅에서는 요소를 통해 단일 문자열 리소스를 추가하는 방법을 알아봤습니다. 이번 포스팅에서는 요소를 사용해 문자열 배열 리소스를 추가하는 방법을 살펴보겠습니다. 1. xml string 리소스 파일 추가 프로젝트를 생성하면 자동으로 생성되는 /res/values/string.xml 파일 안에 리소스를 추가를 해도 상관없지만 따로 xml 문자열 리소스 파일을 생성하여 추가하도록 하겠습니다. ▼ values 폴더를 우클릭하여 [New]-[values resource file]을 클릭합니다. 파일 이름을 mystring.xml로 지정하고 ok를 클릭하면 /values/ 경로에 mystring.xml 파일이 생성되는 것을 확인할 수 있습니다. 무궁화 장미 해바라기 ■ ~ - 안드로이드에서 리소스를 추가할..
만약 여러분들이 개발하는 앱이 한국시장을 넘어 외국시장도 노리고 있다면 앱은 다국어 지원이 가능해야 합니다. 다국어 지원이란 단말기에 설정된 국가 언어에 따라 해당 국가 언어로 문자열이 바뀌는 것을 의미합니다. 안드로이드에서 다국어를 지원하기 위해서는 문자열 리소스를 활용해야 합니다. 이번 포스팅에서는 간단하게 한국어와 영어를 동시에 지원하는 앱을 만들어보겠습니다. 1. 한국어 문자열 리소스 추가 먼저 한국어를 지원하기 위해서는 한국어 전용 문자열 리소스 폴더를 생성합니다. ▼ 먼저 /res/ 경로에 문자열 리소스 폴더를 생성해줍니다. res 폴더를 우 클릭하여 [New]-[Directory]를 클릭하고 폴더 이름을 지정해주고 OK버튼을 클릭합니다. ▼ 여기서 폴더명은 반드시 values-ko와 같이 v..
안드로이드 TextView는 화면에서 Text를 표시할 때 사용하는 뷰 위젯입니다. Button 과 EditText의 부모 클래스이기도 한 TextView는 사용법은 간단하지만 부모 클래스인 View 클래스로부터 상속받는 다양한 속성과 자기 자신이 가지는 다양한 속성들로 인해 자유자재로 다루는데는 시간이 걸립니다. 1. TextView 화면에 배치하기 ▼ TextView를 화면에 배치하는건 간단합니다. 심지어는 안드로이드 프로젝트를 처음 만들었을 때 생기는 Activity의 xml 레이아웃 리소스에서도 익숙하게 보셨을 겁니다. TextView의 Text 속성에 화면에 표시하고자 하는 문자열을 속성값으로 지정하게 되면 해당 속성값이 화면에 표시가 됩니다. 2. 자바 소스에서 TextView의 Text 지정..
App 사용자의 일련의 행동에 대해 반응하고 특정한 기능을 수행하는 것을 이벤트를 처리한다는 또는 이벤트를 핸들링한다고 말합니다. 대표적으로 Button 클릭 이벤트가 있습니다. 사용자가 Button을 클릭하면 구현된 기능을 수행하죠. 이를 Button 클릭 이벤트를 처리한다고 말합니다. 안드로이드에서는 특정 이벤트 처리를 리스너(Listener)를 구현함으로써 처리할 수 있습니다. 특정 뷰(View)에 대해 이벤트가 발생하고 등록된 리스너의 오버라이딩 된 약속된 Method를 호출함으로써 이벤트를 처리하는 방식인 거죠. 이번 포스팅에서는 이벤트를 처리하기 위한 여러 방법에 대해서 알아보도록 하겠습니다. 1. 공통 예제 레이아웃 형태. 버튼 이벤트 처리에 대한 예제는 동일한 기능을 수행하는 App을 기반..
안드로이드 에디트텍스트(EditText)는 TextView로부터 파생된 클래스로 TextView는 단순히 Text를 보여주는 역할을 한다면 EditText는 Text를 입력 및 수정까지 가능한 뷰(View) 위젯입니다. 1. EditText 기본 사용법 EditText를 화면에 배치하는 방법은 간단합니다. 레이아웃 리소스 XML에서 사이에 EditText의 속성을 정의하면 됩니다. ▼ App을 실행하면 EditText가 화면에 배치된 것을 확인할 수 있습니다. Layout 리소스 xml에서 EditText의 Text 속성값을 "Sample EditText"로 지정하였기 때문에 초기 App 실행 시점의 Text영역에는 "Sample EditText"가 나타납니다. EditText를 클릭하면 Text 입력기..
GridLayout은 2차원 격자무늬 형태의 레이아웃으로 행과 열의 집합형태로 구성된 레이아웃입니다. TableLayout의 단점을 보완한 레이아웃으로 LinearLayout 또는 FrameLayout과 같은 다른 레이아웃의 장점을 포함하는 레이아웃입니다. GridLayout을 사용할 시 다른 레이아웃과 중첩으로 사용할 필요가 없어 메모리 사용량을 줄일 수 있다는 장점이 있습니다. 1. GridLayout 속성 - orientation / rowCount / columnCount 속성 설명 orientation 자식 뷰(View)들이 GridLayout의 각 셀 영역에 배치되는 방향을 결정합니다. orientation = "horizontal" : 수평방향으로 뷰(View)를 정렬합니다. orientat..
안드로이드 4대 구성요소(Component)는 엑티비티(Activity), 서비스(Service), 콘텐트 제공자(Content Provider), 방송수신자(Brodcaster Receiver)로 이루어져 있습니다. 각각의 구성요소(Component)는 독립된 형태로 존재하며 각자가 고유의 기능을 수행하며 중간에 인텐트(intent)를 통해 상호작용을 합니다. 이번 포스팅에서는 4대 구성요소의 전체적인 개념에 대해서만 정리하고 각 구성요소에 대해서 자세한 내용을 포스팅하도록 하겠습니다. 4대 구성요소(Component) 1. 엑티비티 (Activity) 엑티비티(Activity)는 사용자 화면을 담당하는 구성요소입니다. App에서 엑티비티를 구현하기 위해서는 Activity Class를 상속받아야 하며..