한국어

Programming

twin 주소복사
조회 수 4223 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

앱인벤터에서 두개 이상의 스크린을 사용하는 경우가 많이 있습니다. 하나의 스크린에서 두번째 스크린으로 값을 전달할 필요가 있을 때 사용하는 기법을 소개합니다.
 

<그림 1> 여러개의 스크린을 사용하는 예

<그림 1>에서 ①번 부분에서 "Add Screen" 버튼을 눌러서 새로운 스크린을 추가할 수 있습니다. 스크린은 스마트폰의 화면 하나를 의미합니다. 스크린 별로 디자인과 블록코딩을 할 수 있습니다.

하나의 스크린에서 다른 스크린으로 이동할 때는 ②번 Control에서 "Open another screen" 이나 "Open Screen With start value" 블록을 사용합니다. "Open another screen"은 단순히 다른 스크린으로 이동할 때, ③ "Open another screen wth start value"는 다른 스크린으로 이동하며 값을 전달할 때 사용됩니다.

두개의 스크린을 사용하는 예로 구구단 앱을 만들어보겠습니다. 먼저 실행 화면을 보겠습니다.
 

<그림 2> 구구단 앱의 실행 화면

이 앱은 Screen1과 ScreenDan의 두개 스크린으로 구성됩니다. 첫번째 그림은 시작 화면으로 Screen1입니다. 텍스트 상자를 클릭하면 두번째 화면처럼 숫자를 입력하는 키보드가 나타나고 여기에서 3을 입력한 후 "출력" 버튼을 클릭하면 새로운 스크린(ScreenDan)이 열리면서 구구단 3단을 출력하게 됩니다. 

Screen1의 디자인에서 텍스트 상자의 속성을 (1) Hint 에 "원하는 단을 입력하세요" (2) Numbers Only를 체크합니다. (3) TextAlignment는 Center로 합니다. 이렇게 하면 숫자를 입력하기 전에 흐릿한 글씨로 "원하는 단을 입력하세요"라는 힌트가 나오고, 클릭했을 때 숫자 키보드가 보이게 됩니다. 숫자를 입력하면 그림에서 처럼 숫자가 가운데 정렬되어 표시됩니다.

블록코딩을 살펴보겠습니다.

먼저 Screen1의 블록코딩은 <그림 3>과 같이 해줍니다.

<그림 3> Screen1의 블록코딩

텍스트 상자에 값이 들어가 있을 때, "ScreenDan"을 Open해 주는데 이때 txtDan.Text를 전달해줍니다. 즉, 3단을 출력할 때는 3이라는 값을 ScreenDan 화면으로 전달하는 겁니다.

전달된 값은 start value로 받습니다. 이 값은 Control 안에 "get start value" 블록으로 받을 수 있습니다.
 

<그림 4> ScreenDan의 코딩

<그림 4>는 start value를 사용하여 반복문으로 3단을 출력하는 코딩입니다. 반복될 때마다 새로운 줄에 써주어야 하므로 "\n"(백슬래시 n)을 써줍니다. 이 기호는 new line을 의미하는 기호입니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
31 [앱인벤터2] 말하는 Hello World 앱  twin 2018.08.27 1525
30 [앱인벤터] 위치센서 LocationSensor를 이용한 거리측정기  twin 2018.08.27 3090
29 [앱인벤터] 리스트를 이용하여 녹음이 되는 실로폰  twin 2018.08.27 5350
28 [앱인벤터] Sound를 이용한 실로폰 앱  twin 2018.08.27 985
27 [앱인벤터] 내가 만든 앱을 구글 플레이스토어에 등록하는 방법  twin 2018.08.27 720
26 [앱인벤터] App Inventor 2 Tips  twin 2018.08.27 1355
25 [앱인벤터] 에뮬레이터, 녹스(nox) 앱플레이어 사용법  twin 2018.08.27 839
24 [앱인벤터] ActivityStarter 액티비티 스타터를 사용한 여행앱  twin 2018.08.27 1651
23 [앱인벤터] 성적계산기  twin 2018.08.27 1035
22 [앱인벤터] Camera & Share, 사진찍고 메모해서 공유하기  twin 2018.08.27 915
21 [앱인벤터]Player(플레이어)를 이용한 I have a dream 앱  twin 2018.08.27 1095
20 [앱인벤터] 카메라와 캔버스, PaintPot 앱  twin 2018.08.27 1322
19 [앱 인벤터] 캔버스와 이미지 스프라이트, 두더지잡기 게임(Molemash)  twin 2018.08.27 2655
18 [앱인벤터] 방향센서와 나침반  twin 2018.08.27 1046
17 [앱인벤터2] 캔버스와 이미지스프라이트, Bouncing Ball 예제  twin 2018.08.27 1122
» [앱인벤터2] 두 개의 스크린 사이의 값 전달, 구구단 예제  twin 2018.08.27 4223
15 [앱인벤터2] Slider를 사용하는 타이머  twin 2018.08.27 2186
14 [앱 인벤터2] 알람시계  twin 2018.08.27 3270
13 [앱 인벤터2] 위치센서와 문자 보내기, SOS 앱  twin 2018.08.27 2555
12 [앱인벤터2] 아날로그 시계 만들기  twin 2018.08.27 2971
Board Pagination Prev 1 2 3 Next
/ 3