안 쓰던 블로그
안드로이드 공부 0730 본문
1.
margin은 부모 뷰 컴포넌트 기준으로 빈 공간 설정
padding은 자체 레이아웃 기준으로 내부 컨텐트에 대해 빈 공간 설정
layout_margin
layout_marginLeft
padding
paddingTop 등등
2.
view를 겹쳐서 표현하고 싶으면 relative layout이나 frame layout 사용
먼저 선언한 뷰가 더 아래에 깔리는 식으로 겹쳐진다
되도록 relative보다는 frame사용 권장
relative는 내부 연산과정이 조금 더 걸린다
3.
정렬
layout_gravity는 컴포넌트 자체 정렬
gravity는 내부 컨텐트 정렬
4.
ScrollView
내부적으로 하나의 뷰 컴포넌트 자식만 가질 수 있다
LinearLayout같은 상위 레이아웃으로 묶어주어 사용한다
android:scrollbars="none"
스크롤바를 표시 안 되게 한다. 자주 사용함
android:fillViewport="true"
내부적인 오류를 방지하기 위한 옵션으로 무조건 쓰는 것이 좋다
5.
해상도 별 이미지 불러오기
이미지를 해상도 별로 쪼개주는 플러그인-Android Drawable Importer
shift 더블클릭->plugins->Android Drawable Importer 검색->설치
검색으로 뜨지 않으면 그냥 구글에 검색해서 zip파일 다운로드 받고 disk에서 플러그인 불러오기 하면 된다
drawable->new->batch drawable import로 이미지를 로딩
android: src="@drawable/파일이름" 으로 표시
6.
scaleType
이미지 뷰에서 scaleType 옵션을 조정하여 해당 이미지 컴포넌트가 뷰를 어떻게 채울지 결정할 수 있다
android:scaleType="centerCrop"
중앙 기준으로 해상도 손상없이 이미지뷰를 꽉 채우게 함. 가장 많이 쓰임
7.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:~ 옵션을 사용하려면 무조건 위에 저거를 최상위 뷰로 지정해주어야 한다
8.
drawable파일을 직접 만들 수도 있다
drawable->new->new resource file
그라데이션 그리기
<selector 라고 되어 있는 맨 윗 줄을 이렇게 바꾼다
<shape xmln:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
android:angle="180"
android:centerColor="#9C27B0"
android:endColor="#2196F3"
android:startColor="#FFC107" />
angle="90"이라고 바꾸면 가로로 된다
그라데이션을 쓸 때는 개발자가 직접 그리는 것이 좋다->해상도마다 크기가 달라지는데 깨지면 특히 이상하기 때문에
테두리 그리기
<stroke
android:width="20dp"
android:color="#2196F3" />
면 채우기
<solid
android:color="#2196F3"/>
테두리를 위에 겹칠 수 있다
네 모서리가 둥근 면 채우기
<corners
android:bottomLeftRadius="30dp"
android:bottomRightRadius="20dp"
android:topLeftRadius="50dp"
android:topRightRadius="100dp"/>
이렇게 간단한 도형은 디자이너한테 수치값만 받고 개발자가 그리는 게 더 좋을 수 있다
'안드로이드' 카테고리의 다른 글
안드로이드 공부 0731 (유튜브 UI) (0) | 2020.07.31 |
---|---|
Android Drawable Importer 없음/로딩 안 될 때 해결방법 (0) | 2020.07.31 |
안드로이드 UI - Viewcomponent (0) | 2020.07.28 |
안드로이드에서 화면을 그리는 방법 (0) | 2020.07.28 |
코틀린 - 상속과 인터페이스 차이 (0) | 2020.07.18 |