본문 바로가기

개발(Development)/Android(안드로이드)62

[안드로이드] XML | 코드로 화면을 그리는 메서드: setContentView() # setContentView()메서드란? 액티비티의 화면을 그려주는는 메서드이다. "Activity.java" 클래스에 정의된 메서드를 상속받아 사용한다. # setContentView() 종류 3가지 setContetView() 메서드는 3가지 타입의 매개변수를 받을 수 있다.(오버로딩) 각 메서드는 Java | Kotlin 순으로 표기했다. 1. setContentView(int layoutResID) | setContentView(layoutResID: Int) : 레이아웃 파일의 ID를 인수로 받아, XML 기반의 화면을 렌더링한다. 2. setContentView(View view) | setContentView(view: View!) : View클래스의 객체를 인수로 받아, 코드 기반의 화면.. 2021. 7. 11.
[안드로이드] Entry Point, Launcher, 4대 컴포넌트 개념 # Entry Point 란? 프로그램의 "구동이 시작되는 부분" 을 Entry Point라고 한다. 예를 들어 Java, C계열의 언어는 main()함수가 Entry Point가 되며, Python은 처음 실행시키는 py파일(모듈)이 Entry Point가 된다.(내부변수 __name__에 __main__이 할당된다.) class MyClass{ // ../ public static void main(String[] args){ //.. 앱의 시작점(Entry Point) } // ... } # 안드로이드의 Entry Point 안드로이드 앱은 명시적인 형태의 Entry Point가 존재하지 않는다. 대신 4대 컴포넌트가 모두 앱의 시작점이 될 수 있다. 예를 들어, 홈화면(Launcher)에서 앱 아.. 2021. 7. 11.
[안드로이드] R.java / R.jar 개념 및 위치: 리소스 식별 변수 관리 원리 안드로이드 앱 개발을 시작하면, 화면 레이아웃을 표시하고, View를 참조하기 위해 아래와 같은 코드를 작성한다. setContetView(R.layout.activity_main); fineViewById(R.id.text_view_01) 그런데 저 R이란 대체 무엇일까? # R.java 란? 안드로이드 리소스(레이아웃, 이미지, 문자열 등)를 식별하기 위한 변수들을 관리하는 R 클래스이다. 예를 들어, 1. res/drawable 경로에 my_image_01.png 파일을 추가하면, 2. R.java 파일에 정수 형태의 "my_image_01" 변수가 자동으로 생성되며, 3. 다른 자바 코드에서 "R.drawable.my_image_01" 으로 해당 이미지 리소스를 참조할 수 있게 된다. /* R.j.. 2021. 7. 11.
[안드로이드] 매니페스트(AndroidMainfest.xml) 개념과 구조 1. 매니페스트란? 앱의 패키지, 컴포넌트, 권한, 기기호환성 설정을 관리하는 app > mainfests > AndroidManifest.xml 파일이다. 2. 매니페스트의 구조와 설정내용 : 패키지 ㄴ : 컴포넌트 ㄴ : 권한 ㄴ : 기기호환성 위의 각 내용을 상세하게 정리해본다. # 매니페스트 앱의 1)패키지, 2)구성요소(컴포넌트), 3)권한, 4)기기호환성을 정의하는 환경설정 파일이다. app > mainfests > AndroidManifest.xml 경로에 위치한다. # 매니페스트 구조 단순한 XML파일로 아래의 중첩 구조를 갖고 있다. ㄴ ㄴ ㄴ application 태그의 경우, 4대 컴포넌트를 등록하는 태그로 아래의 추가 중첩 구조를 갖는다. ㄴ ㄴ ㄴ ㄴ ㄴ # 매니페스트에서 설정하는.. 2021. 7. 11.
[안드로이드] 그레이들 Gradle Scripts에 대한 정리 # Gradle Scripts란? 안드로이드 프로젝트를 생성하면 Gradle Scripts 라는 영역에 build.gradle, settings.gradle 등의 파일이 자동으로 만들어진다. 이 파일들을 통해 안드로이드 프로젝트의 빌드 정보, 라이브러리 등을 관리한다. 보통 빌드 및 라이브러리 관련 설정이 관리되는 정도로만 확인하고 넘어가는데 사실상 개발하면서 건드릴 일은 거의 없지만, 정리 차원에서 조금 더 상세하게 기록한다. 안드로이드 프로젝트 구조에 대해서는 아래 글 참고 [안드로이드] 앱 프로젝트 구조 # Gradle Scripts 의 구조 Gradle Scripts는 아래 그림과 같이 총 7개의 파일로 구성되어 있다.(버전에 따라 다소 상이할 수 있다.) 1. build.gradle (Proje.. 2021. 7. 10.
[안드로이드] 앱 프로젝트 구조 # 프로젝트란 ? SW개발을 위해 필요한 소스코드, 리소스 및 데이터, 환경설정 파일 등을 통합적으로 관리하는 구조를 말한다. 보통 서버나 앱을 개발 할 때, 폴더를 하나 만들고 모든 코드와 파일을 넣어서 관리하는데 이 폴더를 프로젝트라고 볼 수 있다. # 안드로이드 앱 프로젝트 구조 안드로이드 프로젝트는 소스코드(java/kotlin코드), 리소스(이미지 파일 등), 환경설정(manifest, Gradle Script)으로 구성된다. 앱 자체에 대한 내용은 app영역에 위치하며 1) 환경설정은 manifests 경로에, 2) 소스 코드는 java 경로에, 3) 이미지와 같은 리소스는 res 경로에서 관리된다. 빌드/버전 설정 및 라이브러리는 Gradle Scripts 영역에 위치하며 build.grad.. 2021. 7. 10.
[안드로이드] 앱 프로젝트 템플릿 (액티비티 UI) 종류 # 안드로이드 Phone and Table 템플릿 종류 1. No Activity : 화면이 없는(액티비티X) 프로젝트를 생성한다. : 백그라운드에서만 작동하는 Service 기반의 앱을 만들 때 주로 사용한다. 2. Basic Activity : AppBar, FloatingActionButton이 들어간 화면의 앱 생성한다. 3. Bottom Navigation Activity : 화면 하단에 "표준 하단 탐색 모음" 메뉴가 탑재된 앱을 생성한다. 4. Empty Activity : 비어있는 레이아웃 파일과 액티비티를 하나씩 생성한다. : 레이아웃 파일에는 "Hello world"와 같은 샘플 텍스트가 들어가 있다. 5. Fullscreen Activity : '전체화면뷰'와 '표준 UI컨트롤로 구성.. 2021. 7. 10.
[안드로이드] 앱 개발 프로젝트 생성 방법 # 안드로이드 프로젝트 생성 방법 1. 안드로이드 스튜디오 구동 2. Create New Project 클릭 * 이미 다른 프로젝트가 실행중인 환경에서는 File > New > New Project 클릭 3. Activity 템플릿 선택 : 필요에 맞는 화면 템플릿을 선택한다. : 스마트폰/태블릿 환경의 빈 화면을 원하는 경우, : 왼쪽에서 Phone and Tablet 선택, 오른쪽에서 Empty Activity를 선택후, next 클릭 * 각 템플릿 종류에 대한 내용은 아래 글 참고 [안드로이드] 앱 프로젝트 템플릿 (액티비티 UI) 종류 4. 프로젝트 설정 : 아래 항목들을 입력 후, Finsih 클릭 1) Name: 애플리케이션 이름 설정 2) Package name: 안드로이드 앱을 구분하는 유.. 2021. 7. 10.