본문 바로가기
방통대

방통대 모바일프로그래밍 2019-1 출석수업 기출문제 풀이 및 다운로드

by 4.5/4.5 2024. 5. 7.
반응형

16. 안드로이드 프로그래밍 개발 환경에서 앱에서 사용할 문자열에 대한 내용과 아이디를 저장하는 파일은 무엇인가?
   ① AndroidManifest.xml
   ② strings.xml
   ③ assets.xml
   ④ R.java

 

 

정답: 2

 

해설:  안드로이드 프로그래밍에서 앱에서 사용할 문자열과 그 아이디를 저장하는 파일은 strings.xml이다. 이 파일은 앱의 리소스 디렉토리 내에 위치하며, XML 형식으로 문자열의 이름과 값을 정의해서 앱 전체에서 재사용 가능하게 한다. 이 방법은 국제화와 지역화를 용이하게 하여 다양한 언어를 지원하는 앱 개발에 매우 유용하다.

다른 선택지에 대해서 설명하자면, AndroidManifest.xml은 앱의 필수 구성 요소와 사용 권한을 정의하는 파일이다. assets.xml 파일은 실제로 표준 안드로이드 개발 구조에는 존재하지 않으며, R.java는 앱에서 사용하는 모든 리소스의 아이디를 자동으로 생성하는 시스템 생성 파일이다. 따라서 문자열과 아이디를 직접 관리하는 데에는 strings.xml이 적합하다.

 


 

 

 


17. TextView의 속성 중에서 문자열을 지정하기 위한 속성은 무엇인가?
   ① background 속성
   ② src 속성
   ③ text 속성
   ④ textSize 속성

 

정답: 3

 

해설: TextView에서 문자열을 지정하기 위한 속성은 'text' 속성이다. 이 속성을 사용하여 텍스트 뷰에 표시될 문자열의 내용을 지정할 수 있다. 다른 선지에 제시된 'background' 속성은 뷰의 배경을 설정하는 데 사용되고, 'src' 속성은 주로 ImageView에서 이미지 리소스를 지정하는 데 쓰이며 TextView와는 관련이 없다. 'textSize' 속성은 텍스트의 크기를 설정하는 데 사용되지만 문자열의 내용을 결정하는 것은 아니다. 따라서 문자열을 직접 지정하는 속성은 'text' 속성이 정답이다. 이는 TextView를 사용할 때 필수적으로 알아야 할 기본적인 속성 중 하나이다.

 


 

 

 


18. View의 안쪽에 배치되는 내용물(Text View, Image View, 레이아웃 등)을 배치하는 방식(정렬 방식)을 결정하는 속성은 무엇인가?
   ① gravity 속성
   ② layout_weight 속성
   ③ padding 속성
   ④ layout_margin 속성

 

정답: 1

 

해설: View 내부의 내용물을 정렬하는 속성은 gravity 속성이다. 이 속성은 TextView, ImageView, 레이아웃 등 View 내부에서 요소들이 어떻게 배치될지를 결정한다. 예를 들어, gravity를 'center'로 설정하면 내용물이 View의 중앙에 위치한다. 반면, layout_weight 속성은 LinearLayout에서 자식 View들이 남은 공간을 어떻게 분할할지 결정한다. padding 속성은 View의 내용과 그 경계 사이의 공간을 추가하는 반면, layout_margin 속성은 View의 외부 경계 주변에 공간을 추가한다. 

 


 

 

 


19. TextView에서 글꼴의 모양을 지정하며, normal, sans, serif, monospace 중 하나로 글꼴 모양과 선택할 때 사용하는 속성은 무엇인가?
   ① textColor 속성
   ② textStyle 속성
   ③ typeface 속성
   ④ singleLine 속성

 

정답: 3

 

해설: TextView에서 글꼴의 모양을 지정할 때 사용하는 속성은 `typeface` 속성이다. 이 속성을 사용하여 'normal', 'sans', 'serif', 'monospace' 등의 글꼴 모양을 설정할 수 있다. 이에 반해 `textColor` 속성은 글자의 색상을 변경하는 데 사용되며, `textStyle` 속성은 글꼴의 스타일(예: 굵게, 기울임꼴)을 지정하는 데 사용된다. `singleLine` 속성은 텍스트가 단일 줄로 표시되도록 설정하는 속성이다. 따라서 글꼴의 모양을 선택할 때는 `typeface` 속성이 정확한 선택이다. 이는 TextView의 시각적 표현을 구성하는 중요한 요소 중 하나이다.

 


 

 

 


20. ImageView에서 이미지 확대/축소 및 크롭과정을 지정하는 속성은 무엇인가?
   ① adjustViewBounds 속성
   ② scaleType 속성
   ③ tint 속성
   ④ cropToPadding 속성

 

 

정답: 2

 

해설: ImageView에서 이미지의 확대, 축소 및 크롭 방식을 지정하는 속성은 'scaleType'이다. 이 속성은 이미지를 어떻게 조정할지 여러 방식을 제공한다, 예를 들어 'fitCenter', 'centerCrop' 등이 있다. 다른 선택지인 'adjustViewBounds'는 이미지의 경계를 조정하여 뷰에 맞추는 역할을 하지만, 직접적으로 확대, 축소 및 크롭을 지정하지는 않는다. 'tint' 속성은 이미지에 색상 필터를 적용하고, 'cropToPadding'은 패딩 내에서 이미지를 어떻게 처리할지 결정하지만, 이들도 확대/축소나 크롭을 직접적으로 제어하지는 않는다. 따라서 정답은 'scaleType' 속성이다.

 


 

 

 

 

21. 차일드 View와 부모 View 사이의 여백을 지정하는 속성은 무엇인가?
   ① layout_gravity
   ② layout_weight
   ③ Padding
   ④ layout_margin

 

정답: 4

 

해설:  차일드 View와 부모 View 사이의 여백을 지정하는 속성은 'layout_margin'이다. 이 속성을 사용하면 View의 경계 주위에 여백을 추가할 수 있다. 반면, 'layout_gravity'는 View가 부모 컨테이너 안에서 위치를 어떻게 정렬할지를 지정한다. 'layout_weight'는 LinearLayout에서 여러 View 사이의 공간 배분을 결정하는 데 사용되며, 'Padding'은 View의 내부 여백, 즉 View의 콘텐츠와 경계 사이의 공간을 지정한다. 

 


 

 

 


22. View의 layout_width, layout_height의 속성을 다르게 각이 지정한 경우 높이와 폭으로 알맞은 것은?

 

layout_width: match_parent 
layout_height: match_parent

 

 

정답: 3

 

해설: match_parent는 View가 위치한 레이아웃의 크기에 맞춰 최대한의 크기로 출력한다. 따라서 부모 레이아웃의 가로와 세로 만큼 확대된 3번이 정답이다. 

 


 

 

 

 

 

 

23. View사이의 순서에 상관없이 내용물들간의 상대적인 위치로 차일드 View를 배치하는 레이아웃은 무엇인가?
   ① RelativeLayout
   ② LinearLayout
   ③ AbsoluteLayout
   ④ FrameLayout

 

정답: 1

 

해설: 정답은 ① RelativeLayout이다. RelativeLayout은 차일드 View들을 상대적 위치로 배치하는 레이아웃으로, View들 사이의 순서와 관계없이 다른 View에 대한 위치 지정을 통해 배치할 수 있다. 반면, ② LinearLayout은 차일드 View들을 선형으로 배치하며, 이는 수평 또는 수직의 일렬로 정렬하는 방식이다. ③ AbsoluteLayout은 특정 좌표에 View를 배치하는 것을 가능하게 하지만, 유연성이 떨어지며 현재는 권장되지 않는다. ④ FrameLayout은 여러 View를 겹쳐서 표시할 수 있지만, 이는 주로 각 View를 쌓는 방식으로 사용된다. 따라서 View의 상대적 위치를 지정하는 데는 RelativeLayout이 가장 적합하다.

 


 

 

 

 

24. 폰트 높이가 서로 다른 문자열의 아래쪽 면을 가지런히 정렬하여 출력할 수 있도록 하는 속성은?
   ① android:baselineAligned="true"
   ② android:baselineAligned="false"
   ③ android:textlineAligned="false"
   ④ android:underlineAligned="true"

 

정답: 1

 

해설: 정답은 ① android:baselineAligned="true"이다. 이 속성을 사용하면 폰트 높이가 서로 다른 문자열들을 그들의 기준선(baseline)에 따라 가지런히 정렬할 수 있다. 이는 뷰 그룹 내에서 여러 자식 뷰들의 텍스트가 일관된 선상에 위치하도록 보장하는 역할을 한다. 단, BaselineAligned 속성에서 TextView를 정렬할 때 View들이 수평으로 있어야 속성값이 적용되고, 수직 레이아웃에서는 의미가 없는 속성이다. android:baselineAligned 속성값의 기본값은 true이며 자동적으로 텍스트 View 정렬이 적용된다. 선택지 ②는 이 속성을 비활성화하는 것으로, 문자열들이 기준선에 따라 정렬되지 않는다. ③과 ④는 실제 안드로이드 속성이 아니므로 관련 없다. 

 


 

 

 


25. EditText에 대한 설명으로 옳은 것은?
   ① EditText를 터치하면 수동으로 문자 입력 키보드를 호출해야 한다.
   ② TextView의 모든 속성을 사용할 수 있다.
   ③ 문자열 편집과 관련된 메소드를 제공하며, text 속성은 사용할 수 없다.
   ④ 사용자가 선택해 명령을 내릴 수 있는 위젯이며 사각 모양을 하고 있으며 표면에 명령의 의미를 설명하는 문자열이 표시되어 있다. 

 

정답: 2

 

해설: EditText는 사용자로부터 문자열을 입력받을 수 있는 인터페이스를 제공하는 위젯이다. TextView의 서브 클래스로 TextView의 모든 속성을 사용할 수 있으며, EditText를 통해 입력한 문자열을 편집하고 활용하기 위해 다양한 메소드가 제공된다. ①은 잘못된 설명이다; Android 시스템에서 EditText를 터치하면 자동으로 키보드가 호출된다. ③번도 오류가 있다. EditText는 문자열 편집과 관련된 메소드를 제공하지만 text 속성 역시 사용할 수 있다. 마지막으로 ④번은 EditText의 설명이 아니라 일반적인 버튼의 설명에 더 가깝다.

 


 

 

 


26. AndroidManifest.xml에 대한 설명으로 바른 것은?
   ① API 레벨dms 정의할 수 없다.
   ② 개발자는 이 파일을 변경해서는 안된다.
   ③ 실제 스마트폰의 이미지를 저장하는 파일이다.
   ④ 프로젝트에 상관없이 파일의 이름이 고정되어 있다.

정답: 4

 

해설:  AndroidManifest.xml에 대한 올바른 설명은 ④이다. 이 파일은 Android 애플리케이션의 중요한 메타데이터를 포함하며, 모든 프로젝트에서 파일 이름이 'AndroidManifest.xml'로 고정되어 있다. ①번에서 API 레벨은 AndroidManifest.xml 내에서 `<uses-sdk>` 태그를 통해 최소 및 타겟 API 레벨을 정의할 수 있다. ②번, 개발자는 애플리케이션의 필요에 따라 AndroidManifest.xml 파일을 수정해야 하며, 이는 흔한 작업이다. ③번, AndroidManifest.xml은 애플리케이션의 구성 요소, 권한, 버전 등을 정의하는 설정 파일이지 이미지를 저장하는 파일이 아니다. 

 


 

 

 


27. padding에 대한 설명으로 옳은 것은 무엇인가?
   ① View의 바깥쪽 여백이다.
   ② View와 내용물 간의 간격을 지정한다.
   ③ View 크기에는 padding 속성값이 포함되어 있지 않다.
   ④ 네 방향(상하좌우) 변에 대해 서로 다른 여백 값을 줄 수 없다.

 

 

정답: 2

 

해설: 정답 2번은 padding이 View와 그 내용물 간의 간격을 지정하는 것이라고 설명하고 있는데, 이는 올바른 정보다. padding은 View의 내부 여백을 조정하여 내용과 View의 경계 사이의 공간을 제어한다. ①번은 잘못된 설명으로, padding이 아니라 margin이 View의 바깥쪽 여백을 의미한다. ③번 역시 틀린 정보를 담고 있으며, padding은 실제로 View의 총 크기 계산에 포함된다. 마지막으로 ④번은, padding을 네 방향(상하좌우)에 대해 각각 다르게 설정할 수 있다.

 


 

 

 

 

28. ImageView에서 이미지에 색조를 지정하여 입힐 때 사용하며, 색조가 덮여 출력되도록 하는 속성은 무엇인가?
   ① tint 속성
   ② src 속성
   ③ drawable 속성
   ④ adjustViewBounds 속성

 

정답: 1

 

해설:  tint 속성이다. 

 


 

 

 


29. 다음 보기에서 (가)와 (나)의 내용으로 맞는 것은 무엇인가?

 

orientation 속성의 (가) 값은 차일드 View를 위에서 아래로 수직으로 배열하고, (나) 값은 차일드 View를 왼쪽에서 오른쪽으로 수평으로 배열한다.


   ① (가) wrap_content   (나) match_parent
   ② (가) horizontal      (나) vertical
   ③ (가) match_parent    (나) wrap_content
   ④ (가) vertical        (나) horizontal

 

정답: 4

 

해설: orientation 속성은 LinearLayout 내부에 포함된 View들을 배치하는 방향을 지정하는 속성이다. LinearLayout의 선형적 배치 방법으로는 수직 배치와 수평 배치 두 방향이 있는데 각각 vertical, horizontal이다. 

 


 

 

 


30. 다음 명령어에 대한 설명으로 옳은 것은?

 

   android:id="@+id/button"


   ① ‘@’는 예약어이다.
   ② ‘+’는 id속성을 새로 정의한다는 뜻으로 참조할 때마다 붙여야 한다.
   ③ ‘button’는 개발자가 결정하는 고유한 명칭으로 View끼리 중복되어서는 안된다.
   ④ ‘id’는 id속성을 R.java에 정의하거나 참조하는 뜻이다.

 

 

정답: 3

 

해설: 정답은 ③ 'button'는 개발자가 결정하는 고유한 명칭으로 View끼리 중복되어서는 안 된다는 내용이다. 이는 각 View를 식별할 수 있는 유일한 식별자로 사용되며, 중복을 피해야 정확한 요소 참조가 가능하다. ① '@'는 예약어가 아니라 id를 R.java에 등록하거나 참조할 때 사용하는 기호이다. ② '+'는 id 속성을 처음 정의할 때 새로 생성한다는 의미로 사용되며, 이후 참조할 때는 사용하지 않는다. ④ 'id'는 R.java 파일에 id 속성을 정의하거나 참조하는 키워드로 사용된다. 

 

id 속성을 구성하는 세부 요소
• @: id를 R.java에 등록하거나 R.java로부터 참조할 때 사용된다.
• +: ID를 새로 정의하는 의미이며, 처음 정의할 때만 사용하고 참조할 때는 사용하지 않는다.
• id/: 안드로이드 개발에 반드시 사용되어야 한다.
• ID: id/ 이후에 나오는 요소로 ID 속성값이다. 고유한 값으로 지정하여 View들 사이의 중복을 피하고 명칭 규칙을 준수해야 한다.

 


 

2019-1 모바일앱프로그래밍 출석수업.pdf
1.03MB

반응형