-
Title:
05-07 레이아웃 만들기 - 해답
-
Description:
-
이 레이아웃을 만들기 위해
activity_main.xml 파일을 열어요.
-
이 뷰들을 수직 열에 각각 놓기 위해
수직 LinearLayout이
-
필요함을 알아요.
-
먼저 RelativeLayout을
LinearLayout으로 바꿀게요.
-
즉시, 여는 태그가 닫는 태그와
일치하지 않는다는
-
에러 메시지가 발생했네요.
이걸 복사해서 여기 아래에 붙여 넣어요.
-
이제 태그가 일치합니다.
-
다음으로 뷰를 추가합시다.
-
먼저, quantity 텍스트 뷰가 있어요.
-
이 뷰를 가지고 안의 텍스트를
quantity로 바꿀게요.
-
다음으로 0이라고 말하는
텍스트 뷰가 있어요.
-
첫 번째 텍스트 뷰를 복사해
여기 아래에 붙여 넣을 수 있어요.
-
이것을 바꿔서 여기 화면과 같도록
텍스트가 0이 되도록 할 겁니다.
-
이 LinearLayout의 마지막
child는 버튼입니다.
-
전에 우리 레이아웃에 버튼을 추가한 적이
없었으니, Google에서 검색해보죠.
-
브라우저를 열면 button
android라고 검색할 수 있어요.
-
첫 링크가 좋아 보이네요.
developer.android.com 사이트예요.
-
여기 버튼에 관한 문서가 있어요.
여기 대부분의 텍스트는 무시하고요.
-
클래스 개요를 보기 위해
아래로 스크롤해 내려갑니다.
-
우리가 아직 배운 적 없는
Java 코드에 대해 얘기하지만,
-
여기 아래에 버튼을 위한
xml도 있네요.
-
이걸 복사해서 우리 코드에서
무슨 일이 일어나는지 봅시다.
-
우리 레이아웃에 두 텍스트 뷰
아래에 버튼을 추가할 겁니다.
-
문서에서 온 코드를
여기 붙여넣을 겁니다.
-
이제 자폭하는 문자열 대신
-
order 같은 더 친근한 것으로 가볼게요.
-
마지막 줄은 필요하지 않으므로
지워도 되죠.
-
좋아요, 이제 quantity 텍스트 뷰,
0이라는 텍스트 뷰,
-
order 버튼이 있죠.
-
어떻게 보이는지 알기 위해
초록 재생 버튼을 눌러서
-
앱을 실행해봅시다.
-
이것이 구축되고 있는 걸
여기서 볼 수 있어요.
-
이건 우리가 원하던 게 아니에요.
-
우리 LinearLayout이 사실
수직이 아니라 수평으로 나타나네요.
-
방향 속성을 넣어봅시다.
-
android:orientation="vertical"이라고
말하도록 바꿔봅시다.
-
그럼 문제가 해결될 겁니다.
-
다시 실행을 눌러요.
-
좋아요, 이제 낫네요.
-
세 children은 수직 열에서 보여요.
-
우리는 이 필드에 스타일을 줘서
-
우리가 받은 화면 그림과
더 비슷하게 만들어야 합니다.
-
화면 그림에서 quantity 텍스트 뷰가
모두 대문자인 것을 볼 수 있어요.
-
레슨 1에서 android:textAllCaps
라는 속성을 배웠어요.
-
이는 자동 완성으로 나타나죠.
-
이렇게 나타난다면, 그냥 엔터를 눌러
-
당신을 위해 여기 코드에
자동으로 입력되게 하세요.
-
우리는 모두 대문자이길 바라므로
값을 참으로 둡니다.
-
텍스트를 대문자화할 때
이 속성을 쓰는 게 더 나은 이유는
-
당신이 UI를 바꿀 때 quantity가
이렇게 소문자일 때,
-
우리가 할 일은 그저 이 속성을
없애는 것이기 때문입니다.
-
텍스트를 찾아 바꿀 필요 없이요.
-
다음으로 여기 텍스트는 0은
16sp로 바뀌어야 합니다.
-
지금 추가하죠. 이것은
자동완성으로 제안되었으니
-
저는 엔터를 누르고
값으로 16sp를 선택합니다.
-
저는 글꼴 색이 검정이길 원해요.
-
검은색을 위한
Android 시스템 컬러를 사용하죠.
-
그건 이렇게 참조됩니다.
-
좋아요, 그건 quantity와 0
텍스트 뷰 모두를 다루는군요.
-
order 버튼은 이대로 괜찮고
버튼 속의 텍스트를
-
자동으로 대문자화할 겁니다.
높이 너비는 wrap_content네요.
-
우리는 이 수직 공간을 해결해야 해요.
-
quantity와 0 텍스트 뷰 사이에
16dp의 패딩이나 마진을 원해요.
-
또한 텍스트 뷰 0과
order 버튼 사이에도
-
16dp의 패딩을 원해요.
-
다양한 많은 방법으로
이걸 할 수 있어요.
-
저는 이 버튼에 layout_marginTop
을 추가하겠어요.
-
quantity 텍스트 뷰에는
marignBottom을 추가하고요.
-
같은 모습으로 보인다면
다른 어떤 방법으로 해도 상관없어요.
-
제가 아래 마진과 위의 마진을
선택한 이유는
-
여기 이 중간 부분이
나중에 바뀔 것을 알기 때문이죠.
-
우리는 이것을 + - 버튼이 있는
quantity picker로 바꿀 것이고
-
전 quantity 와 picker 사이에
여전히 16dp의 공간을 원해요.
-
버튼에도 마찬가지고요.
-
좋아요, 다시
기기에서 실행해 봅시다.
-
멋져요. 우리가 원하던 것 같네요.
-
quantity 텍스트 뷰는 대문자고
0 텍스트 뷰는 검은색 글자색이고
-
사이즈는 16sp이고,
여기 order 버튼이 있죠.
-
이 뷰들 사이에 16dp의
공간도 있죠.
-
잘 했어요. 잊을 뻔 했네요
-
이 퀴즈는 이 버튼을
클릭했을 때 발생하는 일도 물어보죠.
-
사실 지금으로선
아무 일도 안 일어나네요.
-
다음에 무슨 일이 일어나는지
찾기 위해 계속 보세요.