36. 다음 중 LinearLayout일 때, 버튼의 배치에 대한 layout_width 속성과 layout_height 속성이 각각 match_parent, match_parent일 때의 화면 출력 결과로 옳은 것은 무엇인가?
정답: 1
해설: match_parent는 View가 위치한 레이아웃의 크기에 맞춰 최대한의 크기로 출력한다. 따라서 부모 레이아웃의 가로와 세로 만큼 확대된 1번이 정답이다.
37. 다음의 출력 화면으로 보면 아래의 소스코드 파일의 이름은 무엇인가? (4점)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">FirstActivity</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
</resources>
① MainActivity.java
② R.java
③ activity_main.xml
④ strings.xml
정답: 4
해설: 안드로이드 앱이 사용하는 다양한 유형의 리소스 중 하나인 문자열은 관리의 편의성을 위해 XML 파일에 따로 정의된다. 제시된 소스는 문자열이 정의되는 XML로서 strings.xml 파일이다.
38. 프로젝트의 버전이나 이름 등과 같은 주요 설정을 정의하는 파일은 무엇인가? (2점)
① R.java
② main.xml
③ AndroidManifest.xml
④ strings.xml
정답: 3
해설: AndroidManifest.xml은 앱의 구성 정보를 담고 있는 파일로서 이 Manifest 파일의 이름은 프로젝트에 상관 없이 고정되어 있다. 앱을 구성하는 전반적인 기능에 대한 명세를 포함하며, 버전이나 이름 등의 주요 설정을 포함한다.
39. View를 부모 View의 어디다 배치할 것인가를 결정하는 속성은 무엇인가? (2점)
① layout_padding
② tint
③ margin
④ layout_gravity
정답: 4
해설: gravity 속성은 view의 안쪽에 배치되는 TextView, ImageView와 같은 내용물의 정렬 방식을 결정하는 속성이다. 수평/수직 방향에 대해 정렬 방식을 지정할 수 있으며 '|' 연산자로 두 속성을 묶어서 지정할 수 있다.
40. TextView의 text 속성에 대응되며 출력할 이미지를 지정하는 속성으로 ImageView를 사용할 때 반드시 지정해야 하는 속성은 무엇인가?
① src 속성
② cropToPadding 속성
③ scaleType
④ background
정답: 1
해설: src 속성은 출력할 이미지를 지정하는 속성이다. 이 속성에 값을 대입하지 않으면 아무 것도 보이지 않기 때문에 ImageView를 사용할 때는 반드시 속성값을 지정해야 한다.
41. RelativeLayout에서 A와 B의 관계만을 가정하고 다음과 같이 작성할 때 A와 B의 배치 화면으로 알맞은 것은 무엇인가?
(A, B는 각 내용물을 의미함) (2점)
<RelativeLayout>
<B
android:id="@+id/b"/>
<A
layout_toRightOf="@id/b"/>
</RelativeLayout>
정답: 2
해설: layout_toRightOf는 지정된 View의 오른쪽에 배치하는 속성이다. 타깃 외부를 기준으로 정렬되는 것을 고려할 때 A는 B의 오른쪽에 위치된다. 따라서 2번이 정답이다.
42. 다음 중 운영체제가 안드로이드인 스마트폰에 관한 설명으로 틀린 것은?
① 플레이 스토어를 통해 앱을 다운로드 받는다.
② 달빅 가상 머신을 사용하여 앱을 실행한다.
③ AirDrop 기능을 제공한다.
④ 웹을 통해 앱을 제공받을 수 있다.
정답: 3
해설: 운영체제가 안드로이드인 스마트폰에 관한 설명 중 틀린 것은 ③번, AirDrop 기능을 제공한다이다. AirDrop은 애플 기기 간에 파일을 무선으로 공유하는 기능으로, 안드로이드 운영체제에는 포함되어 있지 않다. 안드로이드 기기는 주로 Android Beam, Google Nearby Share 등의 기술을 사용하여 파일을 공유한다. 다른 선택지들은 안드로이드 스마트폰에 대해 올바른 설명을 제공한다. ①번은 Google Play 스토어를 통해 애플리케이션을 다운로드 받는 것이 일반적인 방법이다. ②번의 달빅 가상 머신은 이전에 안드로이드에서 애플리케이션을 실행하는 데 사용되었으나, 현재는 ART(Android Runtime)로 대체되었다는 추가 설명이 필요하다. ④번은 웹을 통해서도 앱을 설치할 수 있는 APK 파일 형태로 애플리케이션을 제공받을 수 있음을 나타낸다.
43. 여러 개의 차일드 뷰를 통합하여 화면에 표시할 수 있으며, 사용자와 상호작용도 처리할 수 있으며 항목의 선택이 가능한 이것은 무엇인가?
① AdapterView
② Event
③ Adapter
④ View
정답: 1
해설: 정답은 AdapterView이다. AdapterView는 Android에서 여러 개의 차일드 뷰를 통합하여 화면에 표시하고 사용자와의 상호작용을 처리할 수 있는 뷰 그룹이다. 이를 통해 사용자는 리스트뷰나 그리드뷰와 같은 컴포넌트 내에서 항목을 선택할 수 있다. 이와 대조적으로, Event는 특정 상황에서 발생하는 사건을 처리하는 데 사용되며, Adapter는 데이터와 뷰를 연결하는 역할을 한다. View는 사용자 인터페이스의 기본 구성 요소로, 단일 뷰를 나타낸다. 따라서 AdapterView가 차일드 뷰들을 관리하며 사용자와의 상호작용을 가능하게 하는 가장 적합한 답이다.
44. Spinner에 대한 설명으로 옳은 것은?
① 항상 보이기 때문에 사용자와의 상호 작용에 용이하다.
② 바둑판식으로 항목을 출력하므로 많은 항목들을 보여줄 수 있다.
③ 내용물의 위치는 다른 내용물의 상대적인 위치를 통해 정의된다.
④ 목록을 보려면 팝업을 열어야 한다.
정답: 4
해설: ListView는 항상 펼쳐져 있지만 Spinner는 클릭할 때만 팝업 형식으로 펼쳐진다. 목록을 보려면 팝업을 열어야 하고 선택을 위해 최소한 두 번 클릭해야 한다. ListView는 항상 보이며 사용자와의 상호작용도 용이해서 Spinner보다는 좀 더 활용도가 높은 편이다. 하지만 Spinner의 경우는 여러 개의 항목 중에서 하나를 선택할 때 사용되며, 화면의 공간에 제약이 있는 스마트폰이나 패드형 컴퓨터에 적합한 레이아웃이다.
45. Toast 객체에 대한 설명으로 옳은 것은 무엇인가?
① 잠시만 보였다가 사라지므로, 사용자의 내용 확인을 보장할 수 없다.
② Toast와 관련된 액티비티를 호출하지 못하며, 좀 더 상세한 정보를 보고 싶으면 새로이 액티비티를 호출해야 한다.
③ 평상시에는 Toast 내용이 없으며 상태 영역을 확장해도 보인다.
④ Toast를 출력하려면 Toast 관리자(NotificationManager)만을 사용하여 호출하면 된다.
정답: 1
해설: Toast 객체는 Android 시스템에서 사용자에게 간단한 메시지를 잠시 보여주기 위한 수단이다. 이 객체의 특징으로는 화면에 잠깐 나타났다가 사라지기 때문에 사용자가 내용을 반드시 확인하였다고 보장할 수 없다는 점이 있다. 따라서 사용자의 중요한 피드백을 요구하는 경우나 액션을 필요로 하는 메시지에는 부적합하다. 또한, Toast는 액티비티와 독립적으로 작동하므로, Toast 메시지와 관련된 별도의 액티비티를 호출할 수 없다. 만약 사용자가 메시지에서 더 상세한 정보를 원한다면, 별도의 액티비티를 설계하여 호출해야 한다. Toast의 내용은 사용자가 설정한 메시지만 포함되며, 시스템의 상태 영역을 확장한다고 해서 보이지 않는다. 마지막으로, Toast 객체를 출력하기 위해 NotificationManager가 아닌 Toast 클래스 자체의 메서드를 사용한다.
46. KeyCode에 대한 설명으로 옳은 것은 무엇인가? (2점)
1) KEYCODE_DPAD_LEFT : 왼쪽 이동키
2) KEYCODE_CALL : 뒤로 이동키
3) KEYCODE_BACK : 통화키
4) KEYCODE_DPAD_UP : 통화 종료키
정답: 1
해설: KEYCODE_CALL은 통화, KEYCODE_BACK은 뒤로 이동, KEYCODE_DPAD_UP은 위쪽 이동키이다.
47. 인텐트(Intent) 명시를 위한 수행 작업 중에서 틀린 것은 무엇인가? (2점)
1) ACTION_CALL : 통화를 시작한다.
2) ACTION_EDIT : 데이터를 표시하고 편집한다.
3) ACTION_DIAL : 뭔가를 보여준다.
4) ACTION_MAIN : 메인 액티비티를 실행한다.
정답: 3
해설: 인텐트에 호출할 대상 컴포넌트가 분명히 명시되어 있는 것을 명시적 인텐트라고 한다. 같은 앱 내의 SubActivity를 호출할 때 사용하며, 권한만 있다면 외부 앱의 액티비티도 호출할 수 있다. 즉, 특정 컴포넌트나 액티비티가 명확하게 실행되어야 할 경우에 사용된다. ACTION_DIAL은 전화를 건다이다. 뭔가를 보여준다는 ACTION_VIEW이다. ACTION_MAIN 실행시에는 입출력되는 데이터는 없다.
48. 아래의 결과 화면이 나타나기 위한 코드의 빈칸에 들어갈 메소드로 옳은 것은 무엇인가?
...생략...
case QuestionDialog:
return new (가).Builder(MainActivity.this)
.setTitle("Time 2:19:44")
.setMessage("Do you like the programming?")
.setPositiveButton("YES!", null)
.setNegativeButton("NO!!", null)
.(나);
}
...생략...
(가) (나)
1) AlertDialog create()
2) AlertDialog setTitle()
3) setMessage create()
4) setMessage setTitle()
정답: 1
해설: AlertDialog.Builder에서, Builder의 생성자와 속성에 관한 설정 메소드들은 Builder 자체를 반환한다. Builder 객체 생성 후, 별도의 메소드 호출문을 각각 작성할 필요 없이 반환되는 Builder 객체에 대해 메소드들을 연쇄적으로 작성할 수 있다. 마지막에 show()를 하거나 create()를 한다.
49. 리스너에 대한 설명으로 옳은 것은?
① 이벤트 발생 여부를 예측하여 선행적으로 실행된다.
② 리스너는 모든 이벤트를 처리하는 인터페이스이다.
③ 대응되는 이벤트를 받는 여러 개의 메소드가 선언되어 있다.
④ 모두 View 클래스의 내부 인터페이스로 선언되어 있는 것이 옳다.
정답: 1,2,3,4
해설: 이벤트 리스너는 View 내에 있는 일종의 특정 이벤트를 처리하는 인터페이스이다. 즉, 이벤트 리스너는 특정 이벤트가 발생하는 시점까지 대기하고 있다가, 발생된 이벤트에 부합되는 콜백 메소드를 수행한다. 이러한 이벤트 리스너에는 이벤트를 받는 하나의 콜백 메소드가 선언되어 있으며, 모두 View의 내부 인터페이스로 선언되어 있다. View가 사용자의 상호작용으로 인해 이벤트 리스너가 호출되었을 때, 콜백 메소드는 안드로이드 프레임워크에 의해 호출된다.
View를 통한 콜백 메소드는 특정 터치 이벤트만 미리 지정되어 있으므로 처리할 수 있는 이벤트가 제한적이다. 하지만 이벤트 리스너 인터페이스를 통한 이벤트의 처리는 처리 가능한 이벤트가 제한적이지 않으므로 범용적이며, View를 상속 받을 필요도 없다.
50. 다음 코드를 실행하였을 때, 사각형을 나타내는 코드는 무엇인가?
1) Pnt.setColor(Color.GREEN);
canvas.drawText("Canvas Text Finish", 100, 100, Pnt);
2) Pnt.setColor(Color.RED);
canvas.drawRect(10, 80, 80, 200, Pnt);
3) Pnt.setColor(0x800000ff);
canvas.drawCircle(80, 80, 50, Pnt);
4) Pnt.setColor(Color.BLACK);
canvas.drawPoint(30, 30, Pnt);
정답: 2
해설: 다음 코드를 실행했을 때, 사각형을 나타내는 코드는 2번이다. 2번 코드에서 Pnt.setColor(Color.RED)는 Paint 객체 Pnt의 색상을 빨간색으로 설정하며, canvas.drawRect(10, 80, 80, 200, Pnt)는 (10, 80) 위치에서 시작해 가로 70, 세로 120 크기의 빨간 사각형을 그리는 명령이다. 다른 선지들을 살펴보면, 1번은 텍스트를 그리고, 3번은 원을 그리며, 4번은 특정 위치에 점을 찍는다. 각각의 명령은 사각형이 아닌 다른 도형이나 그래픽 요소를 그리는 데 사용된다.
51. TableLayout에 대한 설명으로 옳은 것은?
① 셀에 배치되는 차일드 View는 무조건 주어진 셀 안에 배치되므로 layout_width 속성값은 따로 지정할 수 있다.
② shrinkColumns, stretchColumns 속성을 사용하면 특정 열을 '축소/확장 가능'으로 지정할 수 있다.
③ shrinkColumns 속성을 사용하여 '축소 가능'으로 지정하면 부모 높이에 맞추기 위해 열의 폭을 강제로 축소하지 않는다.
④ 여러 개의 행이 한 TableLayout에 공존해야 하므로 TableRow의 높이(layout_height)의 기본 속성값은 match_parent으로 지정되어 있다.
정답: 2
해설: TableLayout은 표 형태로 자식 View를 배치하는 레이아웃이다. TableLayout은 표 형식이므로 행과 열의 구분이 필요하다. TableLayout은 여러 개의 TableRow 객체로 구성되며, TableRow 객체 하나가 하나의 행에 해당된다. TableRow 내부는 여러 개의 열로 구성되고 하나의 열을 셀이라고 부른다. 즉, 여러 개의 행이 쌓여서 하나의 표 형태를 이루고, 하나의 행에는 여러 개의 열(셀)이 존재하며, 열(셀) 하나에는 하나의 자식 View가 포함된다. TableRow 개수가 곧 행의 개수이고 하나의 TableRow 안에 배치되는 차일드 View의 개수가 열(셀)의 개수가 되므로, TableLayout의 전체 크기는 '행X열'로 계산된다.
shrinkColumns, stretchColumns 속성은 특정 열의 크기를 축소하거나 확장하는 속성이다. shrinkColumns속성은 '축소 가능'을 의미하며 부모 폭에 맞추기 위해 열의 폭을 강제로 축소한다. stretchColumns 속성은 '확장 가능'을 의미하며 부모 View의 남은 여백을 채우기 위해 열의 폭을 임의로 확장할 수 있다.
1번 설명에 대해서는 자식 View는 무조건 주어진 셀 안에 배치되므로 layout_width 속성은 따로 지정할 수 없으며 항상 fill_parent로 지징된다. 4번 설명에 대해서는 자식 View의 높이는 기본 속성값으로 wrap_content가 설정되어 있지만 필요한 경우 match_parent로 지정하여 하나의 셀로 행을 채울 수도 있다.
52. FrameLayout에 대한 설명으로 옳은 것은 무엇인가? (2점)
1) 차일드 View가 두 개 이상일 때는 추가된 순서의 순서의 역순으로 중첩되어 표시된다.
2) 먼저 추가된 차일드 View가 아래쪽에 깔리고, 가장 나중에 추가된 차일드 View가 화면에 나타난다.
3) 차일드 View중 여러 개를 동시에 화면에 나타나게 할 수 있다.
4) 차일드 View를 배치하는 규칙을 통해 차일드 View는 FrameLayout의 우측 상단에 나타난다.
정답: 2
해설: FrameLayout은 차일드를 배치하는 규칙이 따로 없고 모든 차일드는 프레임의 좌상단에 나타나며 추가된 순서대로 겹쳐서 표시하는 레이아웃이다. 차일드 View가 두 개 이상일 때는 추가된 순서대로 겹쳐서 표시하는 특징이 있다. 먼저 XML 코드에 정의된 자식 View가 아래에 위치하고 나중에 추가된 자식 View가 위쪽에 출력된다. 즉, XML 코드에 정의한 순으로 아래부터 자식 View가 놓여지게 된다.
53. padding 속성에 대한 설명으로 틀린 것은 무엇인가? (4점)
1) View와 내용물 간의 간격을 지정한다.
2) View 크기는 padding 속성값이 포함되어 있다.
3) padding 속성에 값을 대입하면 사면 모두 동일한 여백이 적용되어 한 번에 여백을 지정할 수 있다.
4) View와 부모 View와의 간격을 지정한다.
정답: 4
해설: padding은 View와 View의 콘텐트 사이의 간격을 지정하는 속성이다. View의 안쪽 여백이며, TextView의 경우 TextView 자체와 중앙의 텍스트 사이에 padding 속성값만큼의 여백이 삽입된다. padding 속성은 View 내부에서 컨텐츠와 View 경계 사이의 여백을 조절한다. 정답 4번은 View와 부모 View 사이의 간격을 지정한다고 잘못 설명하고 있으며, 이는 margin 속성의 역할이다. 1번은 정확하게 padding이 View와 그 내용물 간의 간격을 정의한다는 점을 설명한다. 2번은 padding이 포함된 전체 View의 크기를 나타낸다고 설명하는데, 이 역시 정확하다. 3번은 padding 속성을 일괄적으로 설정하면 사면 모두 같은 여백이 적용된다는 점을 올바르게 표현하고 있다.
54. TextView의 속성 중에서 글꼴의 스타일을 지정하며, normal, bold, italic 중 하나를 설정하거나 또는 '|'로 두 개 이상의 상숫값을 지정할 수 있는 속성은 무엇인가? (4점)
1) typeface 속성
2) textStyle 속성
3) textSize 속성
4) text 속성
정답: 2
해설: 정답 2번인 textStyle 속성은 TextView에서 글꼴 스타일을 지정하는 속성으로 normal, bold, italic 옵션을 단독으로 설정할 수 있으며, '|' 기호를 사용하여 이러한 스타일을 조합할 수 있다. 이와 달리 1번 typeface 속성은 글꼴 자체를 지정하는 데 사용되며, 3번 textSize 속성은 글자의 크기를 지정하는데 사용된다. 4번 text 속성은 TextView에 표시될 텍스트의 내용을 직접 입력하는 용도로 사용된다.
55. 차일드 영역 분할에서 중요도(layout_weight)에 대한 설명으로 틀린 것은? (3점)
1) 중요도가 0일 경우에는 자신의 고유한 크기만큼 영역을 차지한다.
2) 중요도가 0일 경우에도 영역 분할에 참여한다.
3) 부모 레이아웃의 남은 영역을 얼마나 차지할 것인가를 결정한다.
4) 중요도가 1 이상이면 형제 뷰와 비율에 따라 영역을 할당받는다.
정답: 2
해설: layout_weight 속성은 상위 레이아웃의 영역에서 내부 레이아웃이나 위젯의 영역 할당 비율을 지정하는 속성이다. layout_weight 값이 0이면 원래 크기만큼 영역을 차지하고, 1 이상이면 상위 레이아웃에 포함된 레이아웃이나 위젯들이 layout_weight 값의 크기에 비례하여 상위 레이아웃의 영역을 차지하게 된다. 2번 선지에서 중요도가 0인 경우 분할에서 제외된다.
56. AlertDialog와 Toast에 대한 설명으로 옳은 것은? (3점)
1) AlertDialog는 사용자에게 전달사항을 알리고 질문을 통해 사용자의 선택을 받아들인다.
2) Toast는 사용자의 상호작용을 할 수 한다.
3) Toast가 AlertDialog보다 좀 더 복잡한 메시지를 전달할 때 사용된다.
4) AlertDialog는 내부 클래스인 Builder를 통해 생성할 수 없다.
정답: 1
해설: AlertDialog는 사용자에게 중요한 정보를 전달하거나 사용자의 결정을 요구할 때 사용된다. 이 컴포넌트는 일반적으로 확인, 취소 등의 옵션 버튼을 포함해 사용자의 입력을 유도하며, AlertDialog.Builder 클래스를 통해 생성되어 커스터마이징이 가능하다. 반면, Toast는 간단한 메시지를 잠시 동안 화면에 표시하는 데 사용되며, 사용자 상호작용을 수반하지 않는다.
57. 애플리케이션 생명주기에 대한 설명으로 틀린 것은? (3점)
1) 안드로이드는 멀티태스킹을 지원하므로 여러 개의 응용 프로그램을 동시에 실행할 수 있다.
2) 액티비티는 시작, 실행, 활성화, 정지, 종료되는 일련의 상태를 순환한다.
3) 시스템은 태스크의 실행 중인 액티비티들을 큐로 관리한다.
4) 정지 상태(stopped)는 다른 액티비티에 의해 완전히 가려진 상태이며 사용자 눈에 보이지 않는 상태이다.
정답: 3
해설: 애플리케이션 생명주기에 대한 문제에서 정답은 3번이다. 3번 선지에서 시스템이 태스크의 실행 중인 액티비티들을 큐로 관리한다고 언급되어 있으나, 실제로 Android 시스템은 실행 중인 액티비티들을 스택으로 관리한다. 액티비티들은 LIFO(Last In First Out) 방식의 스택 구조를 따르기 때문에, 가장 최근에 활성화된 액티비티가 스택의 맨 위에 위치하며, 사용자가 뒤로 가기 버튼을 누를 때마다 스택에서 제거된다. 다른 선지들을 살펴보면, 1번은 안드로이드가 멀티태스킹을 지원하여 여러 애플리케이션을 동시에 실행할 수 있다는 사실이 맞다. 2번은 액티비티의 생명주기를 정확하게 설명하고 있으며, 4번 또한 정지 상태에 대한 올바른 설명이다. 따라서 3번 선지의 설명이 잘못된 정보를 담고 있다.
58. 아래와 같은 acitivty_main.xml 소스코드가 있다고 할 때, 구성되는 순서에 따라 위로 겹쳐지는 형태를 가져 지구 이미지만 출력되었다. 이때 사용된 Layout은 무엇인가?
<?>
...생략...
<ImageView
android:id="@+id/img1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/banana" />
<ImageView
android:id="@+id/img2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/earth" />
</?>
① RelativeLayout
② AbsoluteLayout
③ LinearLayout
④ FrameLayout
정답: 4
해설: 정답 4번인 FrameLayout은 겹치는 레이아웃 구조를 갖는다. 이 예제에서는 두 개의 ImageView가 나열되어 있는데, FrameLayout을 사용할 경우 요소들이 겹쳐서 표현된다. 제시된 소스코드에서 먼저 선언된 banana 이미지 뒤에 earth 이미지가 나열되므로, earth 이미지만 보이게 된다. 이는 FrameLayout의 특성상 포함된 첫 번째 요소부터 상위에 표시되는 다른 요소들에 의해 가려질 수 있기 때문이다. RelativeLayout은 요소 간의 상대적 위치를 지정하여 표시하고, AbsoluteLayout은 절대적 위치로 요소를 배치한다. LinearLayout은 요소를 선형으로 배치하여 겹치지 않게 한다. 이러한 설명으로 FrameLayout이 적절한 답임을 알 수 있다.
59. 다음 보기는 orientation 속성에 대한 설명이다. 이 중 옳은 것을 고르시오. (3점)
ㄱ orientation 속성은 LinearLayout에서만 사용된다.
ㄴ orientation 속성을 별도로 지정하지 않을 경우에는 기본적으로 horizontal이 적용되어 수평 방향으로 뷰를 배치한다.
ㄷ activity_main.xml 코드 안에서 차일드 뷰를 수평 방향으로 배치하고자 하면 [android:orientation = "horizontal"] 처럼 쓰면 된다.
① ㄴ
② ㄱ, ㄴ
③ ㄴ, ㄷ
④ ㄱ, ㄴ, ㄷ
정답: 1,2,3,4
60. 애플리케이션 인텐트에 대한 틀린 설명은 무엇인가? (3점)
1) 액티비티는 각종 기본적인 주요 컴포넌트이다.
2) 액티비티는 반드시 내부에 View와 ContentReceiver를 가져야 한다.
3) 인텐트는 복수의 액티비티로 구성된 애플리케이션에서 액티비티들 간에 통신을 위해 필요한 ‘통신 장치’를 의미한다.
4) 인텐트는 액티비티 뿐만 아니라 주요 컴포넌트들이 수행해야 할 작업에 대한 정보를 가지며 작업 결과를 반환하게 위해서도 사용된다.
정답: 2
해설: 정답 2번은 액티비티가 반드시 내부에 View와 ContentReceiver를 포함해야 한다는 설명이 잘못되었다. 실제로 액티비티는 사용자 인터페이스를 구성하는 주요 컴포넌트로, View를 필요로 하지만 ContentReceiver는 선택적으로 포함될 수 있다. ContentReceiver는 애플리케이션에 전달되는 데이터를 받기 위해 사용되며, 모든 액티비티에서 필수적이지 않다. 1번의 설명은 액티비티가 주요 컴포넌트라는 사실을 올바르게 표현하고 있다. 3번은 인텐트가 액티비티 간의 통신 장치로 사용된다는 사실을 정확하게 설명하고 있으며, 4번은 인텐트가 다양한 컴포넌트들이 수행할 작업에 대한 정보를 가지고 있으며, 필요에 따라 작업 결과를 반환하는 용도로도 사용될 수 있다는 점을 잘 나타내고 있다.
'방통대' 카테고리의 다른 글
방통대 모바일앱프로그래밍 2017-1 기말고사 기출문제 및 해설 다운로드 (0) | 2024.05.08 |
---|---|
방통대 모바일프로그래밍 2017-1 출석수업대체시험 기출문제 풀이 및 다운로드 (0) | 2024.05.08 |
방통대 모바일프로그래밍 2018-1 출석수업대체시험 기출문제 풀이 및 다운로드 (0) | 2024.05.07 |
방통대 모바일프로그래밍 2019-1 출석수업 기출문제 풀이 및 다운로드 (0) | 2024.05.07 |
방통대 모바일앱프로그래밍 기말고사 대비 연습문제 풀이 (0) | 2024.05.07 |