작성한 부스트코스 후기입니다.
여러분들의 성원에 더 노력하는 부스트코스가 되겠습니다.
감사합니다.
******************************************
1)링크: https://blog.naver.com/kartmon/221577981836
2)작성날짜: 19/07/04
3. 제약 레이아웃
1) 뷰의 속성
생각해보기
버튼에는 얼마나 많은 속성이 들어 있을까요?
- 뷰에서 사용할 수 있는 속성과 버튼에서 사용할 수 있는 속성을 사용 할 수 있습니다.
버튼이 텍스트뷰를 상속받아 만들어진 것이라면 버튼을 텍스트뷰라고 말할 수 있는 걸까요?
- 버튼이 텍스트 뷰를 상속 받아서 만들어 졌다면 텍스트 뷰의 기능들을 모두 사용 할 수 있기 떄문에 텍스트 뷰라고도 할 수 있습니다.
2) 제약 레이아웃 (ConstraintLayout)
생각해보기
레이아웃 안에 레이아웃을 넣는 방식으로 3~4개의 레이아웃을 중첩시켜 넣은 후 그 안에 버튼을 넣으면 하나의
레이아웃 안에 버튼을 넣었을 때와 다른 점이 있을까요? 어떤 경우에 이렇게 만들까요?
- 제일 마지막 레이아웃의 속성에 따라서 버튼의 위치가 결정 됩니다.
제약 레이아웃 안에 두 개의 버튼을 넣고 하나의 버튼을 다른 버튼과 연결하여 위치시키면
하나의 버튼을 움직였을 때 다른 버튼도 따라 움직일까요?
- 네 따라 움직입니다. 제약 레이아웃이기 떄문에 상대적 위치에 따라서 버튼의 위치가 결정 되기 때문입니다.
4. 리니어 레이아웃
1) 대표적인 레이아웃 살펴보기
생각해보기
리니어 레이아웃 안에 리니어 레이아웃을 포함시키면 어떤 화면이든 다 만들 수 있는 걸까요?
- 아니요 수직배치와 수평 배치만을 이용하기 때문에 겹쳐서 생성할 필요가 있을때는 불가능 할 것 같습니다.
2) 리니어 레이아웃 (LinearLayout)
생각해보기
리니어 레이아웃 안에 리니어 레이아웃을 포함시키면 어떤 화면이든 다 만들 수 있는 걸까요?
- 아니요 수직배치와 수평 배치만을 이용하기 때문에 겹쳐서 생성할 필요가 있을때는 불가능 할 것 같습니다.
화면의 위, 아래 끝에 작은 뷰를 배치하고 싶다면 리니어 레이아웃을 쓰는 것보다 더 좋은 방법이 있을까요?
- 상대 레이아웃을 쓰거나 제약 레이아웃을 사용하면 더 간편하게 만들 수 있을 것 같습니다.
5. 상대 레이아웃
1) 상대 레이아웃 (RelativeLayout)
생각해보기
상대 레이아웃을 잘 사용할 수 있다면 다른 레이아웃은 필요 없는 걸까요?
- 상대 레이아웃을 잘 사용할 수 있다고 하더라도 각각의 필요성에 따라 레이아웃의 용도가 다르기 때문에 다른 레이아웃도 필요 합니다.
리니어 레이아웃과 상대 레이아웃을 잘 조합해서 사용하는 방법을 생각해보세요.
- 리니어 레이아웃을 이용해서 본문 내용은 정렬하여 사용하고, 상대 레이아웃을 이용하여 상하단이나 좌우 단을 사용하여 화면을 구성할 수 있을 것 같습니다.
화면에 보이는 뷰들의 일부가 겹쳐있도록 만들 수도 있을까요?
- 마진 값을 조절하여 겹쳐서 만들 수 있습니다.
6. 프레임 레이아웃
1) 프레임 레이아웃과 뷰의 전환
생각해보기
뷰를 중첩시키고 보였다 안보였다 하는 또 다른 예는 어떤 것이 있을까요?
- 여러개의 메뉴를 만들어서 각 탭을 눌렀을때 화면을 전환하여 보여주는 것 다중 메뉴탭을 예로 들수 있을것 같습니다.
화면의 일부분이 바뀌면서 보이는 것 말고 전체 화면이 다른 화면으로 바뀌면서 보이도록 만들 수도 있을까요?
- 프레임 레이아웃을 화면 전체로 적용시키면 바꿀수 있습니다.
이렇게 하기 위해서는 새로운 화면을 또 추가해야 하는 걸까요?
- 새로운 화면을 따로 추가할 필요는 없을 것 같습니다.
7.기본 위젯들
1) 기본 위젯들
생각해보기
다른 사람들이 Play스토어에 올려놓은 앱의 화면에서 볼 수 있는 버튼이나 텍스트뷰에는 얼마나 많은 속성이
설정되어 있을까요?
-기본적인 폰트, 색깔부터 시작해서 엄청나게 많은 속성이 적용되어 있을 것 같습니다.
버튼의 background 속성을 이용해 배경으로 이미지를 설정하면 이미지뷰의 src 속성을 이용해
이미지를 보여주었을 때와 다른 점이 있을까요?
- 일단 배운것 만으로는 생각해 봤을 때, src 속성을 이용해서 이미지를 보여주면 이미지 자체 공간을 가지고 있어 조절이 가능 하지만 background를 사용하면 그것을 만드는 공간의 뒷배경을 사용하게 되므로 공간에 한계가 생기게 됩니다.
원본 이미지의 해상도가 각각 다른 여러 이미지를 하나의 이미지뷰에 번갈아 가면서 보여주려 할 때
이미지뷰의 scaleType 을 어떻게 설정해야 제대로 보여줄 수 있을까요?
- match parent를 사용하여 화면을 채우고, 각각 이미지뷰를 한개씩 보여줘야하기 때문에 한개의 이미지를 보여줄때는 나머지 이미지의 visibiliy를 gone으로 설정해줘야 합니다.
*********************************************