[Android] 레이아웃 작성할 때 알아야 할 것들

Jeanine·2022년 5월 5일
0

android

목록 보기
3/10
post-thumbnail
  1. res/values/themes/에는 안드로이드에서 기본적으로 제공하는 테마가 있으며, 이 테마 때문에 각 컴포넌트가 원하는 색깔로 나오지 않을 수도 있다.

📍 해결방법
- themes.xml 파일에 새로운 style을 적용하기
- themes.xml 파일에 적혀 있는 style의 parent를 변경해보기
- 작성 중인 레이아웃 파일에서 Button 대신 AppCompatButton 등을 사용하기
- Button의 속성에 android:stateListAnimator="@null" 추가하기


  1. view 태그는 margin이나 padding을 적용할 수 없다.

📍 해결방법
- layout 태그를 사용하기


  1. layout_gravity는 부모 컨테이너 안에서 뷰를 정렬할 때 사용하고, gravity는 뷰 안에서 내용물을 정렬 할 때 사용한다.
    • 이때 '|' 연산자를 이용해 여러 개의 값을 같이 설정 가능 (e.g. start|top)

  1. Constraint Layout을 사용할 때는 layout_width와 layout_height를 0dp로 주고, constraint를 다 parent로 해서 꽉 차게 만들 수 있다.

  1. Table Layout에서 shrinkColumns는 각 열의 길이를 줄이는 기능을 가진다.
    • 줄이고자 하는 열의 인덱스를 써주면 됨 (인덱스는 0부터 시작)
    • e.g. android:shrinkColumns="0, 3"
    • 만약 "*"을 쓴다면 모든 열을 지정하는 것이므로 모든 열의 길이가 동일해짐

  1. 버튼이 클릭되었을 때 다른 색깔을 나타내도록 하려면 drawable 파일에서 ripple을 이용하면 된다.
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/buttonPressGray">
    <item android:id="@android:id/background">
        <shape android:shape="rectangle">
            <solid android:color="@color/buttonGray" />
            <corners android:radius="100dp" />
            <stroke
                android:width="1dp"
                android:color="@color/buttonPressGray" />
        </shape>
    </item>
</ripple>
profile
Grow up everyday

0개의 댓글