안드로이드 프로그래밍 3 장 연습 문제 | [3장] 안드로이드 프로그래밍의 모든것 최근 답변 178개

당신은 주제를 찾고 있습니까 “안드로이드 프로그래밍 3 장 연습 문제 – [3장] 안드로이드 프로그래밍의 모든것“? 다음 카테고리의 웹사이트 you.tfvp.org 에서 귀하의 모든 질문에 답변해 드립니다: https://you.tfvp.org/blog/. 바로 아래에서 답을 찾을 수 있습니다. 작성자 HW LEE 이(가) 작성한 기사에는 조회수 614회 및 좋아요 2개 개의 좋아요가 있습니다.

Table of Contents

안드로이드 프로그래밍 3 장 연습 문제 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 [3장] 안드로이드 프로그래밍의 모든것 – 안드로이드 프로그래밍 3 장 연습 문제 주제에 대한 세부정보를 참조하세요

안드로이드 프로그래밍 3 장 연습 문제 주제에 대한 자세한 내용은 여기를 참조하세요.

안드로이드 스튜디오를 활용한 안드로이드 프로그래밍 2-3 정답

3. 16. 02:42. Andro Studio를 활용한 안드로이드 프로그래밍 5판 2-3번 문제(104페이지)에 해당하는 코드입니다. 물론 해당 코드가 완전한 정답은 …

+ 여기에 보기

Source: mc-storage.tistory.com

Date Published: 9/29/2022

View: 9089

안드로이드 프로그래밍

Andro 10.0(Q) 지원, Andro Studio 3.x 사용 사사. 코틀린을 활용한 … 연습문제. 학습목표. ▷ 안드로이드 애플리케이션의 기본적인 작성법을 익힌다.

+ 여기에 더 보기

Source: dokument.pub

Date Published: 1/10/2022

View: 5303

안드로이드 프로그래밍 5장 연습문제 4번 – 하다하블로그

한빛아카데미 IT COOKBOOK 276 Andro Studio를 활용한 안드로이드 프로그래밍 5판 p.237 연습문제 4번. 오른쪽 화면을 XML 파일로 만드시오.

+ 여기에 자세히 보기

Source: programmingandengineering.tistory.com

Date Published: 2/17/2022

View: 4337

[Android Sutdio를 활용한 안드로이드 프로그래밍 개정 5판 …

[Andro Sutdio를 활용한 안드로이드 프로그래밍 개정 5판] 연습문제 9장 6번 … CIRCLE = 2, RECTANGLE = 3; static int curShape = LINE; …

+ 더 읽기

Source: kkkapuq.tistory.com

Date Published: 8/23/2021

View: 7017

[명품 C++ Programming] 3장 연습 문제 – 민도리집

2018년에 3월 5일에 발행된 황기태 저자의 명품 C++ Programming 개정판 3장 연습 문제입니다. 저작권을 준수하기 위해서 에 나와있는 문제는 적지 …

+ 자세한 내용은 여기를 클릭하십시오

Source: mindorizip.tistory.com

Date Published: 2/16/2022

View: 6871

명품자바프로그래밍 3장 연습문제 – 코딩맛집

명품자바프로그래밍 3장 연습문제. 반복문과 배열 그리고 예외 처리. | 연습문제 3-1 | 다음 프로그램의 출력 결과는 무엇인가?

+ 여기에 자세히 보기

Source: coding-restaurant.tistory.com

Date Published: 5/30/2021

View: 4107

주제와 관련된 이미지 안드로이드 프로그래밍 3 장 연습 문제

주제와 관련된 더 많은 사진을 참조하십시오 [3장] 안드로이드 프로그래밍의 모든것. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

[3장] 안드로이드 프로그래밍의 모든것
[3장] 안드로이드 프로그래밍의 모든것

주제에 대한 기사 평가 안드로이드 프로그래밍 3 장 연습 문제

  • Author: HW LEE
  • Views: 조회수 614회
  • Likes: 좋아요 2개
  • Date Published: 2013. 2. 12.
  • Video Url link: https://www.youtube.com/watch?v=hEYZHoSkMfM

안드로이드 스튜디오를 활용한 안드로이드 프로그래밍 2-3 정답

Android Studio를 활용한 안드로이드 프로그래밍 5판 2-3번 문제(104페이지)에 해당하는 코드입니다.

물론 해당 코드가 완전한 정답은 아니며 더 나은 방법이 있을 수 있습니다.

더보기 activity_main.xml 파일 내용

IT CookBook, 코틀린을 활용한 안드로이드 프로그래밍 Flipbook PDF

280

Kotlin 사용

코틀린을 활용한

안드로이드 프로그래밍 Android 10.0(Q) 지원, Android Studio 3.x 사용 사용

우재남, 유혜림 지음 연습문제 해답은 제공하지 않습니다.

Chapter 02 처음 만드는 안드로이드 애플리케이션 01 처음 만드는 Hello Android 프로그램 02 AVD의 명칭과 사용법 03 완전한 기능의 안드로이드 애플리케이션 작성 04 안드로이드 프로젝트의 구성 요약 연습문제

학습목표 ▶

안드로이드 애플리케이션의 기본적인 작성법을 익힌다.

AVD의 명칭을 파악한다.

안드로이드 프로젝트의 구성을 이해한다.

01

처음 만드는 Hello Android 프로그램

이제 본격적으로 안드로이드 애플리케이션을 작성할 차례이다. 기본적인 안드로이드 애플리케 이션을 작성하는 방법은 그리 어렵지 않다. 하지만 그럴듯한 애플리케이션을 만들려면 많은 학 습이 필요하다. 이 절에서는 간단한 안드로이드 애플리케이션을 작성해볼 것이다. 아직 안드로 이드 관련 문법을 몰라도 관계없다.

1 Hello Android 프로젝트 첫 번째로 만들어볼 안드로이드 애플리케이션은 [그림 2-1]과 같다. 여기서 학습할 안드로이드 프로젝트는 [그림 2-2]의 순서로 진행한다. ➊

안드로이드 프로젝트 생성

화면 디자인 및 편집 (*.xml)

Kotlin 코드 작성 및 수정 (*.kt)

프로젝트 실행 및 결과 확인 (AVD)

정상 작동

No

Yes ➎ 안드로이드 애플리케이션 개발 완료 그림 2 -1 처음 만드는 안드로이드 애플리케이션

그림 2 -2 안드로이드 프로젝트 개발 단계

이번 애플리케이션은 아주 간단한 결과만을 출력하지만 아무리 복잡한 애플리케이션도 대부분

62

코틀린을 활용한 안드로이드 프로그래밍

이와 동일한 과정을 거친다. 단지 코드가 더 복잡할 뿐이다.

실습 2-1 첫 응용 프로그램 작성하기

처음으로 작성해보는 안드로이드 애플리케이션이다. 결과는 아주 간단하지만 대부분의 안드로 이드 애플리케이션이 이 과정의 순서대로 작성되니 잘 기억해두자. 1 안드로이드 프로젝트 생성  Android Studio를 실행한다.  초기 창 왼쪽에 기존에 사용했던 프로젝트의 목록이 나타난다. 필요 없다면 마우스 오른쪽 버튼

을 클릭하고 [Remove Selected from Welcome Screen]을 선택하여 제거한다.

그림 2 -3 기존 프로젝트 목록 제거

 초기 창에서 [Start a new Android Studio project]를 클릭한다.

그림 2 -4 새로운 안드로이드 프로젝트

2장. 처음 만드는 안드로이드 애플리케이션

63

 [Choose your project]에서는 생성할 프로젝트의 종류를 선택한다. [Phone and Tablet]

탭의 ‘ Empty Activity’를 선택하고 를 클릭한다.

그림 2 -5 프로젝트 선택

 [Configure your project]에서는 프로젝트에 대한 정보를 입력하거나 선택한다. • Name: HelloAndroid → 프로젝트 이름이며 대문자로 시작하는 것이 좋다. • Package ‌ name: com.cookandroid.helloandroid → 도메인 이름(cookandroid.com)과 애플리케이션 이름 을 이어서 만든다.

도메인 이름은 자기 회사의 도메인 주소(쉽게 말해 웹 서버 주소)를 입력한다. 필자는 cookandroid.com이라는 가상의 회사 도메인을 사용했다.

• Save ‌ location: C:\CookAndroid\Project\HelloAndroid → 프로젝트가 저장될 폴더를 지정한다(한글 폴 더명은 불가). • Language: Kotlin → 사용할 프로그래밍 언어는 Kotlin이다. • Minimum ‌ API level: API 16: Android 4.1 (Jelly Bean) → 이 앱이 작동하는 최하 버전을 선택한다.

프로젝트에 대한 설정을 마쳤으면 를 클릭하여 프로젝트를 생성한다.

64

코틀린을 활용한 안드로이드 프로그래밍

그림 2 -6 프로젝트 설정

 설정 중에는 생략되었으나 다음 2개 항목이 내부적으로 추가되어 있다. • Activity Name: MainActivity → 기본 소스인 Kotlin 파일 이름(MainActivity.kt)으로 지정된다. • Layout Name: activity_main → 기본 화면인 XML 파일 이름(activity_main.xml)으로 지정된다.

앞으로 이 책에서 모든 프로젝트의 기본 소스인 Kotlin 파일 이름은 MainActivity.kt를, 기본 화면인 XML 파일 이름은 activity_ main.xml을 사용할 것이니 기억해놓자.

[그림 2- 6]의 Minimum API level은 지금 작성하는 앱이 작동될 최하 버전을 지정하는 것이다. 이 책을 집필하는 시점에 API 16 (Android 4.1, 젤리빈) 이상의 안드로이드폰은 약 99.6%이다. 만약 최신 안드로이드폰에서만 작동하는 앱을 작성하고 싶다면 이 부분 을 더 높은 API로 선택하면 되지만, 현실적으로 이 앱이 작동하는 안드로이드폰의 수가 줄어들게 된다. 이 책의 앱 대부분은 젤리빈 이상 에서는 무난히 작동하도록 설정할 것이다. 안드로이드폰의 자세한 점유율은 ‘Help me choose’를 클릭하면 확인할 수 있다.

그림 2 -7 안드로이드 버전별 누적 점유율

2장. 처음 만드는 안드로이드 애플리케이션

65

 잠시 기다리면 Android Studio의 왼쪽 Project Tree에 ‘ HelloAndroid’ 프로젝트가 추가

되어 있고 Kotlin 코드가 보일 것이다. 그리고 activity_main.xml 및 MainActivity.kt 파일 이 열려 있을 것이다. 프로젝트의 [res]-[layout]-[activity_main.xml]을 더블클릭하면 오 른쪽에 프로젝트의 화면이 보인다. 만약 스마트폰 화면이 안 보이면 아래쪽의 [Design] 탭을 클릭한다. (오른쪽에 [Attributes] 창이 펼쳐져 있으면 오른쪽 위의

버튼을 클릭하여 축소

한다.)

그림 2 -8 안드로이드 프로젝트 생성 결과

2 화면 디자인 및 편집  화면을 가상 AVD와 동일하게 설정해보자. 스마트폰 그림 위쪽의 ‘ Pixel’을 클릭하여 아랫부

분의 ‘AVD: QPixel_2_’를 선택한다. 앞에서 생성한 AVD와 디자인 화면을 동일하게 하는 것 이다. (이 부분은 생략해도 관계없다.)

66

코틀린을 활용한 안드로이드 프로그래밍

그림 2 -9 디자인 환경 설정

 자동 생성되는 레이아웃은 ConstraintLayout이다. 우선은 RelativeLayout으로 변경하자.

아래쪽의 [Text] 탭을 클릭한 후 2행의 androidx.constraintlayout.widget.Constraint

Layout을 RelativeLayout으로 변경한다. (대·소문자를 정확히 입력해야 한다. 레이아웃과 관련된 내용은 5장에서 자세히 다룰 것이다.)

그림 2 -10 레이아웃 변경

 다시 아래쪽의 [Design] 탭을 클릭한 후 [Enable Autoconnection to Parent] 아이콘을 클

릭하고 왼쪽의 위젯(Widget)* 중에서 몇 개를 오른쪽에 끌어다 놓는다. 오른쪽 위의 확대/축 소 아이콘으로 화면 크기를 조절할 수 있다.

위젯은 버튼, 체크박스, 라디오버튼, 텍스트뷰 등을 말한다. 4장에서 이에 대해 상세히 다룰 것이다.

2장. 처음 만드는 안드로이드 애플리케이션

67

그림 2 -11 그래픽 화면에서 위젯 끌어다 놓기

 이번에는 왼쪽 아래의 [Text] 탭을 클릭한다. 화면에 XML 코드*가 표시될 것이다. 처음에는

복잡해 보일 수 있으나 같은 패턴을 반복하기 때문에 몇 번만 실습해보면 어렵지 않을 것이 다. (오른쪽의 [Preview] 탭을 클릭하면 미리보기가 나타나거나 사라진다.) 추가된 적당한 위 젯 코드를 하나 삭제해보자. 필자는 Button을 삭제했다.

삭제

68

그림 2 -12 XML 코드 변경

코틀린을 활용한 안드로이드 프로그래밍

XML(eXtensible Markup Language)은 구조적인 데이터를 작성하기 위한 다목적 마크업 언어로, 라이선스에 제약이 없고 플랫폼에 독립적이다. 안드로이드에서도 화면을 구성하기 위해 XML을 채용했다.

 다시 [Design] 탭을 클릭하면 방금 삭제한 코드(버튼)가 화면에서도* 삭제된 것을 확인할 수

있다. Android Studio 왼쪽 상단의 저장 아이콘을 클릭하거나 메뉴의 [File]-[Save All]을 클릭하여 변경 사항을 저장하자.

화면을 수정할 때 [Design]에서 마우스로 작업을 하든 [Text]에서 코드를 수정하든 결과는 동일하다. 각자 편리한 방법을 사용하면 되지 만 코드로 편집하는 것이 더 일반적이다. 코드에 익숙해지면 그래픽으로 작업하는 것보다 더 편하다.

버튼이 없어짐

그림 2 -13 그래픽 화면 확인

3 Kotlin 코드 작성 및 수정  왼쪽 Project Tree에서 [ java]-[com.cookandroid.helloandroid]-[MainActivity]를

더블클릭하거나 위쪽 [MainActivity.kt] 탭을 클릭한다. 오른쪽 창에 Kotlin 코드가 나오는 데 앞으로 이 코드를 수정하면 된다. 아직 안드로이드와 관련된 Kotlin 문법을 배우지 않았 으니 그대로 둔다. 단, 가장 먼저 시작하는 메소드는 onCreate( )이고, setContentView(R.

layout.activity_main) 메소드는 바로 앞에서 확인한 activity_main.xml을 화면에 표시하 라는 의미임을 기억하자.

2장. 처음 만드는 안드로이드 애플리케이션

69

그림 2 -14 메인 Kotlin 코드 확인

4 프로젝트 실행 및 결과 확인  메뉴의 [Run]-[Run ‘app’]을 선택하거나 [Run ‘app’] 아이콘을 클릭한다.

단축키

+ 을 눌러도 된다.

그림 2 -15 애플리케이션 실행

 AVD가 여러 개이거나 스마트폰이 연결되어 있다면 먼저 작동할 장치를 상단 중앙의 툴바에

서 선택할 수 있다. (필자는 앞에서 생성한 AVD와 구글 픽셀 3 스마트폰이 연결된 상태이다.)

70

코틀린을 활용한 안드로이드 프로그래밍

그림 2 -16 실행할 안드로이드 장치 선택

 AVD가 부팅된 후 잠시 동안 기다리면 실행 결과 화면이 나타난다. 만약 오류가 발생하거나

원하는 결과가 안 나오면 [그림 2-2]의 ➋번이나 ➌번으로 돌아간다.

앞서 언급했듯이 AVD 화면은

+ 를 누르면 확대되고,

+ 를 누르면 축소된다.

그림 2 -17 프로젝트 실행 결과 결과 화면의 위젯 모양이나 아이콘 등은 AVD 종류, 스마트폰 종류, 안드로이드 버전에 따라서 조금씩 다르게 나타날 수 있다. 특히 AVD 에서 왼쪽 상단의 앱 아이콘이 출력되지 않거나 모양이 다를 수 있는데 실제 스마트폰에서는 잘 출력되므로 문제없다. 하지만 AVD에도 왼쪽 상단의 앱 아이콘을 출력하고 싶다면 72쪽의 [저자 한마디]를 참조하여 코드를 수정한다.

2장. 처음 만드는 안드로이드 애플리케이션

71

5 안드로이드 애플리케이션 개발 완료  이로써 아주 간단한 안드로이드 애플리케이션을 만들어보았다. 복잡한

애플리케이션 개발도 기본적으로는 이와 같은 방식으로 진행된다.

AVD의 초기화면으로 돌아가려면 오른쪽 키패드에서 돌아가기 버튼 을 클릭하거나 AVD 아래의 맨 왼쪽 버튼(◀)을 클릭한다.

AVD는 한 번 실행하면 닫지 말고 그냥 둔다. 추후에 프로젝트를 다시 실행하면 이미 AVD가 가동되 어 있으므로 결과가 화면에 빨리 나타날 것이다. 프로젝트를 실행한다고 해서 이미 가동되어 있는

AVD 화면이 자동으로 Windows 화면 맨 앞으로 나오지는 않는다. AVD가 다른 Windows 화 면에 가려져 있다면 직접 AVD를 클릭하여 화면 앞으로 가져와야 한다.

2-1 새로운 프로젝트 ‘ HiAndroid’를 작성하고 실행한 뒤 화면을 꾸며보라.

저자 한마디

그림 2 -18 돌아가기 버튼

AVD에서 앱 아이콘을 출력하는 방법 ❶ 먼저 아이콘으로 사용할 파일이 필요하다. 일반적으로 96×96 크기 정도의 *.png 파일을 사용하는 것 이 좋다. 필자는 C:\CookAndroid\sdk\extras\google\google_play_services\samples\wallet\

res\drawable-xhdpi 폴더의 ic_launcher.png 파일을 사용했다. (적당한 다른 이미지를 사용해도 상 관없다.) ❷ 파일을 복사하여 Project Tree의 [app] – [res] – [drawable]에 붙여넣기 한다. 메시지 창이 나오면 모두 를 클릭한다.

그림 2 -19 아이콘 이미지를 drawable에 복사

72

코틀린을 활용한 안드로이드 프로그래밍

❸ Project Tree에서 [app]-[java]-[com.cookandroid.앱 이름]-[MainActivity]를 더블클릭해서 열고 setContentView(R.layout.activity_main) 행 아래에 다음 두 행을 코딩한다.

getSupportActionBar ()?.setDisplayShowHomeEnabled (true ) getSupportActionBar ()?.setIcon (R .drawable .ic _launcher )

그림 2 -20 메인 Kotlin 코드 수정 ❹ P roject Tree 에서 [app ]-[manifests ]-[AndroidManifest .xml ]을 더블클릭해서 열고, 11 행쯤의 android:theme를 다음과 같이 수정한다. (이 부분은 생략해도 된다.) android :theme = “@style /AppTheme ” → android :theme = “@style /Theme .AppCompat .Light .DarkActionBar ”

이제 프로젝트를 실행하면 AVD에도 왼쪽 상단에 앱 아이콘이 출력될 것이다.

2장. 처음 만드는 안드로이드 애플리케이션

73

02

AVD의 명칭과 사용법

실제 안드로이드 기기를 사용하면 프로그래밍의 결과를 더 쉽고 빠르게 확인할 수 있다. 하지만 제공되는 AVD만으로도 실제 하드웨어(블루투스, 멀티터치 등)와 관련된 기능을 제외하고 대부 분의 기능을 테스트해볼 수 있다.

1 AVD의 명칭 AVD의 기본적인 명칭은 [그림 2-21]과 같다. 외울 필요는 없으며 몇 번 사용하다 보면 자연스 럽게 익숙해질 것이다. 전원 상태 바 타이틀 바

볼륨 화면 회전 카메라 화면 확대 돌아가기 홈 오버뷰 추가 고급 설정

돌아가기 홈 오버뷰

그림 2 -21 AVD의 명칭

74

코틀린을 활용한 안드로이드 프로그래밍

이 중 가장 자주 사용하는 것은 돌아가기, 메뉴, 홈 버튼이다. • 돌아가기(Back) 버튼: 키보드의

+

• 홈(Home) 버튼: 키보드의

와 동일한 기능을 한다.

+

와 동일한 기능을 한다.

• 오버뷰(Overview) 버튼: 실행 중인 앱이 모두 보이고, 전환하거나 종료할 수 있다. • 상태 바(Status Bar): LTE 수신율, 배터리 상태, 시간 등이 나타난다. 모두 가상이므로 특별히 신경 쓰지 않아도 된 다. 상태 바를 아래로 스와이프하면 알림 메시지를 확인할 수 있다. • 타이틀 바(Title Bar): 기본적으로 안드로이드 프로젝트의 이름이 나타난다. 나타나지 않게 하거나 다른 아이콘과 이 름으로 변경할 수도 있다. 이는 뒤에서 살펴보자.

2 AVD 사용법 AVD 사용법은 안드로이드 스마트폰 사용법과 동일하다. 간단히 몇 가지 사용법을 실습해보자.

실습 2-2 AVD 사용법 알아보기

안드로이드폰 역할을 하게 될 AVD의 기본적인 사용법을 알아보자. 실제 안드로이드폰과 거의 비슷하지만 가상의 장치이므로 조금 다른 점도 있다. 화면 전환  AVD를 초기화면 상태로 둔다. 초기화면이 아니라면 홈

버튼을 누른다.  AVD의 화면을 가로로 바꾸려면

+

또는

+ 를

누른다. 가끔 사용하는 기능이니 기억해놓자. (AVD 환경 에 따라서 화면이 잘 나오지 않을 수도 있다.)  다시

+

또는

+

를 눌러서 세로로 돌려놓는다.

그림 2 -22 초기화면

2장. 처음 만드는 안드로이드 애플리케이션

75

그림 2-23 가로로 전환한 화면(크롬 앱을 실행하고 자동 회전을 켬)

알람 추가  초기화면을 위쪽으로 스와이프하여 [애플리케이션] 화면에서 시계 버튼(

)을 클릭한다.

 알람을 추가할 수 있는 화면이 나온다.

그림 2 -24 알람 시간 추가

 아래쪽의

을 클릭하여 알람 시간을 추가할 수 있다. 기존에 설정된 알람 시간을 사용하려

면 오른쪽 스위치를 클릭한다.  홈 버튼을 클릭하여 초기화면으로 돌아간다.

76

코틀린을 활용한 안드로이드 프로그래밍

카메라와 갤러리  초기화면을 위쪽으로 스와이프하고 카메라 버튼(

)을 클

릭하여 메시지 창이 나오면 을 클릭한다. 사 진 위치를 기록하겠냐는 메시지가 나오면 을 클릭 하고, [Entering Camera Mode] 메시지 창이 나오면 을 클릭한다. 실제 카메라는 없지만 가상의 카 메라 화면이 나온다. 셔터 버튼을 클릭하면 가상 화면이 촬영된다. 몇 번 촬영해본다.

그림 2 -25 가상 카메라 촬영

 홈 버튼이나 돌아가기 버튼을 클릭하여 카메라를 종료한다.  초기화면을 위쪽으로 스와이프하고 [포토]를 클릭하면 백업과 관련된 내용이 나온다. 돌아가

기 버튼과 를 클릭하면 조금 전에 촬영했던 화면이 나타난다. 각각을 클릭하면 사 진을 큰 화면으로 보여준다. 사진 편집/변경 및 삭제, 공유 등의 작업이 가능하다.

그림 2 -26 촬영된 사진 확인

2장. 처음 만드는 안드로이드 애플리케이션

77

 홈 버튼이나 돌아가기 버튼을 클릭하여 초기화면으로 돌아간다. 웹브라우저  크롬 버튼(

)을 클릭한다.

 처음에는 구글 사이트에 접속된다. ‘웹 주소 검색 또는 입력’ 부분에 주소(예: m.daum.net)를

입력하고

를 누르면 해당 페이지로 이동한다. 나머지는 일반 웹브라우저와 동일하다. 페

이지가 길 경우 화면을 터치해서 위아래로 스크롤할 수 있다.

그림 2 -27 웹 서핑

 홈 버튼이나 돌아가기 버튼을 클릭하여 초기화면으로 돌아간다. 배경화면 변경  바탕화면을 몇 초 동안 누른 후 [배경화면]을 선택하면 제공되는 다양한 그림 중에서 고를 수

있다. 마음에 드는 것을 고르고 을 클릭한 후 을 클릭 한다.

78

코틀린을 활용한 안드로이드 프로그래밍

그림 2 -28 배경화면 변경

오버뷰 버튼  안드로이드는 앱을 실행하다가 돌아가기 버튼이나 홈 버튼을 클릭하면 화면에서 사라진다.

사라진 앱은 종료된 것이 아니라 화면의 뒤쪽에 숨었다고 생각하면 된다. 오버뷰 버튼(▒)은 실행 중인 전체 앱을 보여주고 앱을 화면 앞으로 가져오거나 종료하는 기능을 수행한다.

그림 2 -29 실행 중인 프로그램 종료

2장. 처음 만드는 안드로이드 애플리케이션

79

 각각의 앱을 위로 스와이프하면 앱이 종료된다.  앱을 클릭하면 해당 앱이 화면 앞으로 나와서 실행된다.  맨 왼쪽으로 스와이프하여 를 클릭하면 모든 앱이 종료된다. 바탕화면에 애플리케이션 복사  초기화면을 위쪽으로 스와이프하여 앞서 작성한 HelloAndroid 아이콘을 몇 초 동안 누르면

가 나오는데, 여기서 앱을 선택하면 앱의 정보를 확인할 수 있다. 다시 몇 초 동안 누르고 위로 움직이면 바탕화면으로 복사되며, 이때 원하는 위치에 놓으면 된다.

그림 2 -30 바탕화면에 애플리케이션 복사

바탕화면에 복사한 아이콘을 삭제하려면 아이콘을 몇 초 동안 누른 후 상단의 로 가져 다 놓는다. 이때 애플리케이션 자체가 삭제되는 것이 아니라 아이콘만 삭제된다. 아이콘을 로 가져다 놓으면 애플리케이션 자체가 AVD에서 완전히 제거된다.

80

코틀린을 활용한 안드로이드 프로그래밍

그림 2 -31 바탕화면의 아이콘 삭제

Android 10.0(Q)에서는 바탕화면을 오른쪽으로 스와이프하면 뉴스/블로그 등의 사용자 맞 춤형 정보를 보여준다. 구글 계정으로 로그인하면 된다. (이전 버전에서는 구글 검색 화면이 나 왔다.) 이제 AVD에 어느 정도 익숙해졌을 것이다. 이 외에도 여러 가지 사용법이 있지만 필요한 것이 등장할 때마다 설명하겠다.

2장. 처음 만드는 안드로이드 애플리케이션

81

안드로이드 프로그래밍 5장 연습문제 4번

728×90

반응형

한빛아카데미 IT COOKBOOK 276 Android Studio를 활용한 안드로이드 프로그래밍 5판 p.237 연습문제 4번

오른쪽 화면을 XML 파일로 만드시오. 단, 리니어레이아웃만 사용하고 각 레이아웃의 색상을 다르게 설정한다.

activity_main.xml

[Android Sutdio를 활용한 안드로이드 프로그래밍 개정 5판] 연습문제 9장 6번

728×90

반응형

문제

[직접풀어보기 9-2] 를 이전에 그린 도형이 계속 화면에 남아있도록 수정하시오.

결과 화면

XML 코드

얘는 별도의 xml코드가 없다.

JAVA 코드

package com.example.homework5; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.MotionEvent; import android.view.SubMenu; import android.view.View; import java.util.ArrayList; import java.util.List; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { //메뉴 선택에서 모양 고르는 변수 final static int LINE = 1, CIRCLE = 2, RECTANGLE = 3; static int curShape = LINE; static int color = Color.BLACK; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new MyGraphicView(this)); } //메뉴 생성 @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); menu.add(0, 1, 0, “선 그리기”); menu.add(0, 2, 0, “원 그리기”); menu.add(0, 3, 0, “사각형 그리기”); SubMenu subMenu = menu.addSubMenu(“색상 변경 >> “); subMenu.add(0, 4, 0, “빨강”); subMenu.add(0, 5, 0, “초록”); subMenu.add(0, 6, 0, “파랑”); return true; } //메뉴 클릭 시 @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case 1: curShape = LINE; return true; case 2: curShape = CIRCLE; return true; case 3: curShape = RECTANGLE; return true; case 4: color = Color.RED; return true; case 5: color = Color.GREEN; return true; case 6: color = Color.BLUE; return true; } return super.onOptionsItemSelected(item); } //그림판 만들기 private static class MyGraphicView extends View { //Myshape라는 클래스를 만들어주고 도형이 남아있어야 되는 동적 리스트를 하나 만들어준다. Myshape currentShape = null; ArrayList MyshapeArrayList = new ArrayList<>(); public MyGraphicView(Context context) { super(context); } //터치 이벤트 설정 @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: //위에서 정의한 Myshape객체인 currentShape 객체에 시작좌표, 끝좌표, 색깔을 지정해주고.. currentShape = new Myshape(curShape); currentShape.color = color; currentShape.startX = (int) event.getX(); currentShape.startY = (int) event.getY(); break; case MotionEvent.ACTION_MOVE: currentShape.stopX = (int) event.getX(); currentShape.stopY = (int) event.getY(); this.invalidate(); break; case MotionEvent.ACTION_UP: currentShape.stopX = (int) event.getX(); currentShape.stopY = (int) event.getY(); //손을 뗄 때 동적 리스트에 더해준다. MyshapeArrayList.add(currentShape); currentShape = null; this.invalidate(); break; } return true; } protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint = new Paint(); paint.setAntiAlias(true); paint.setStrokeWidth(5); paint.setStyle(Paint.Style.STROKE); //for each 문으로 MyshapeArrayList의 인덱스를 하나씩 호출해준다. //그릴때마다 다시 그려준다고 생각하면 편함! for (Myshape currentShape : MyshapeArrayList) { paint.setColor(currentShape.color); drawShape(currentShape, canvas, paint); } if (currentShape != null) { drawShape(currentShape, canvas, paint); } } //그림을 그리는 함수 private void drawShape(Myshape currentShape, Canvas canvas, Paint paint) { switch (currentShape.shape) { case LINE: canvas.drawLine(currentShape.startX, currentShape.startY, currentShape.stopX, currentShape.stopY, paint); break; case CIRCLE: int radius = (int) Math.sqrt(Math.pow(currentShape.stopX – currentShape.startX, 2) + Math.pow(currentShape.stopY – currentShape.startY, 2)); canvas.drawCircle(currentShape.startX, currentShape.startY, radius, paint); break; case RECTANGLE: Rect rect = new Rect(currentShape.startX, currentShape.startY, currentShape.stopX, currentShape.stopY); canvas.drawRect(rect, paint); break; } } //그린 도형들을 저장해 줄 때 필요한 함수를 만들어줬다. private static class Myshape { int shape, startX, startY, stopX, stopY, color; public Myshape(int shape) { this.shape = shape; } } } }

결과

진짜 이문제 과제로 풀려고 너무오래동안 붙잡고있었다 개어려웠음 ㅠㅠㅠㅠㅠㅠ

728×90

반응형

코딩맛집 :: 명품자바프로그래밍 3장 연습문제

728×90

명품자바프로그래밍 1장 요약, 예제

명품자바프로그래밍 2장 요약, 예제

명품자바프로그래밍 3장 요약, 예제

명품자바프로그래밍 3장 연습문제

반복문과 배열 그리고 예외 처리

| 연습문제 3-1 | 다음 프로그램의 출력 결과는 무엇인가? 그리고 무엇을 하는 코드인가?

1,3,5,7,9. i를 1부터 2씩 더하는 코드.

for(int i=1; i<10; i+=2) { System.out.print(i+""); } | 연습문제 3-2 | 다음 for 문의 실행 결과 sum 값이 다른 하나는? 1) for(int i=0; i<10; i++) sum += i; 2) for(int i=9; i>0; i–) sum += i;

3) for(int i=0; i>10; i++) sum++;

4) for(int i=0; i<10; sum+=i, i++); | 연습문제 3-3 | 1에서 100까지 3의 배수를 더하는 while 문의 빈칸에 적절한 코드를 삽입하라. continue int sum=0, i=1; while (i<100) { if(i%3 != 0) { i++; _________; } else sum += i; i++; } ​ | 연습문제 3-4 | 1에서 50까지의 합을 더하는 while 문이다. 빈칸에 적절한 코드를 삽입하라. i>50

package Luxuryjava03; public class y0304 { public static void main(String[] args) { int sum=0,i=1; while (true) { if(_______) break; sum+=i; i++; } System.out.println(sum); } }

| 연습문제 3-5 | 다음 중 배열 선언이 잘못된 것은?

1) int[] n = {1, 2, 3, 4, 5};

2) int n[] = {0};

3) int[] n = new int[3];

4) int n[3] = new int[3];

| 연습문제 3-6 | 다음 코드에 대해 실행 중 오류가 발생하는 것은?

int array[] = (1, 2, 3, 4, 5);

1) array[0] = -1;

2) int list[] = array;

3) System.out.println(array[4]); ​

4) array[array.length] = 100;

| 연습문제 3-7 | 배열을 선언하고 생성하는 다음 물음에 답하라.

1) 10개의 문자를 가지는 배열 c를 생성하는 코드를 한 줄로 쓰라.

char c[] = new char[10];

2) 0에서 5까지 정수 값으로 초기화된 정수 배열 n을 선언하라.

int n[] = {0, 1, 2, 3, 4, 5};

(3) ‘일’, ‘월’, ‘화’, ‘수’, ‘목’, ‘금’, ‘토’로 초기화된 배열 day를 선언하라.

char day[] = {‘일’, ‘월’, ‘화’, ‘수’, ‘목’, ‘금’, ‘토’};

| 연습문제 3-8 | 배열을 선언하고 생성하는 다음 물음에 답하라.

1) 4개의 논리 값을 가진 배열 bool을 선언하고 true, false, false, true로 선언하라.

boolean bool[] = {true, false, false, true};

2) 5행 4열 크기의 2차원 실수 배열 d를 선언하라.

double d[][] = new double[5][4];

(3) 1에서 12까지 순서대로 초기화되는 4행 3열의 2차원 배열 val을 선언하라.

int val[][] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}, {10, 11, 12}};​

| 연습문제 3-9 | 다음 자바 코드의 어느 부분에 컴파일 오류가 있는 지 찾고 발생원인과 수정된 코드를 기술하라.

int myArray[]; myArray[0] = 1; myArray[1] = myArray[0] + 1;

int myArray[] 배열의 크기를 지정해줘야 한다.

int myArray[] = new int[2]; myArray[0] = 1; myArray[1] = myArray[0] + 1;

| 연습문제 3-10 | 배열 alpha를 모두 출력하고자 한다. 빈칸에 적절한 코드를 삽입하시오.

(1) char[] alpha = {‘a’, ‘b’, ‘c’, ‘d’}; for(____ ​ int i=0; i

키워드에 대한 정보 안드로이드 프로그래밍 3 장 연습 문제

다음은 Bing에서 안드로이드 프로그래밍 3 장 연습 문제 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 [3장] 안드로이드 프로그래밍의 모든것

  • 안드로이드
  • 3장
  • android
  • all that android
  • 안드로이드 프로그래밍
[3장] #안드로이드 #프로그래밍의 #모든것


YouTube에서 안드로이드 프로그래밍 3 장 연습 문제 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 [3장] 안드로이드 프로그래밍의 모든것 | 안드로이드 프로그래밍 3 장 연습 문제, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

Leave a Comment