android: shape 의 사용
6631 단어 android
프로젝트 의 미 화 는 매우 중요 한 단계 입 니 다. 비록 많은 경우 에 우 리 는 그림 을 통 해 각종 효 과 를 완성 할 수 있 지만 안 드 로 이 드 가 우리 에 게 그렇게 강력 한 xml 인터페이스 편집 기능 을 제공 했다 고 생각 합 니 다. 아 쉬 울 필요 가 없습니다. 오늘 마침 안 드 로 이 드: shap 을 사용 하여 여러분 께 말씀 드 리 겠 습 니 다.
먼저 아래 코드 를 보십시오.
<shape>
<!-- -->
<solid android:color="#ff9d77"/>
<!-- -->
<gradient
android:startColor="#ff8c00"
android:endColor="#FFFFFF"
android:angle="270" />
<!-- -->
<stroke
android:width="2dp"
android:color="#dcdcdc" />
<!-- -->
<corners
android:radius="2dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
솔 리드
android: color 채 울 색 지정
gradient: 그 라 데 이 션
android: startColor 와 android: endColor 는 각각 시작 과 끝 색 입 니 다. ndroid: angle 은 그 라 데 이 션 각도 이 고 45 의 정수 배 여야 합 니 다.
또한 그 라 데 이 션 기본 모드 는 android: type = "linear", 즉 선형 그 라 데 이 션 입 니 다. 그 라 데 이 션 을 직경 방향 그 라 데 이 션 으로 지정 할 수 있 습 니 다. android: type = "radial", 직경 방향 그 라 데 이 션 은 반경 android: gradientRadius = "50" 을 지정 해 야 합 니 다.
stroke: 테두리 그리 기
android: width = "2dp" 테두리 의 너비, android: color 테두리 의 색.
우 리 는 또한 테 두 리 를 점선 으로 그 리 는 형식 으로 설정 할 수 있다. 설정 방식 은 다음 과 같다.
android:dashWidth="5dp"
android:dashGap="3dp"
그 중에서 안 드 로 이 드: dashWidth 는 '-' 와 같은 횡선 의 너 비 를 나타 내 고 안 드 로 이 드: dashGap 은 사이 의 거 리 를 나타 낸다.
코너: 원 각
android: radius 는 각 의 라디안 으로 값 이 클 수록 각 이 둥 글 어 집 니 다.
우 리 는 또 네 개의 각 을 다른 각도 로 설정 할 수 있다. 방법 은:
<corners
android:topRightRadius="20dp"
android:bottomLeftRadius="20dp"
android:topLeftRadius="1dp"
android:bottomRightRadius="0dp"
/>
여기 주의 할 점 이 있 습 니 다. bottom Left Radius 는 왼쪽 아래 가 아니 라 오른쪽 아래 입 니 다. 이것 은 좀 답답 하지만 사용 에 영향 을 주지 않 습 니 다. 잘못 생각 하지 마 세 요.
그리고 인터넷 에서 0dp 로 설정 하면 무효 라 고 하 는 사람 을 보 았 습 니 다. 그런데 테스트 에서 괜 찮 은 것 을 발 견 했 습 니 다. 제 가 사용 한 것 은 2.2 입 니 다. 이 문 제 를 복 구 했 을 수도 있 습 니 다. 무효 라면 1dp 로 설정 할 수 밖 에 없습니다.
padding: 간격
이것 은 더 이상 말 할 필요 가 없습니다. XML 레이아웃 파일 에 자주 사 용 됩 니 다.
대체적으로 이렇다. 다음은 사용 하 는 구체 적 인 예 이다. Selector 에서 Button 의 배경 으로 단추 의 일반 상태, 초점 상태 와 눌 렀 을 때의 상 태 를 정의 했다. 구체 적 인 코드 는 다음 과 같다.
main.xml:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TestShapeButton"
android:background="@drawable/button_selector"
/>
>
button_selector.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" >
<shape>
<!-- -->
<gradient
android:startColor="#ff8c00"
android:endColor="#FFFFFF"
android:type="radial"
android:gradientRadius="50" />
<!-- -->
<stroke
android:width="2dp"
android:color="#dcdcdc"
android:dashWidth="5dp"
android:dashGap="3dp" />
<!-- -->
<corners
android:radius="2dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item android:state_focused="true" >
<shape>
<gradient
android:startColor="#ffc2b7"
android:endColor="#ffc2b7"
android:angle="270" />
<stroke
android:width="2dp"
android:color="#dcdcdc" />
<corners
android:radius="2dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item>
<shape>
<solid android:color="#ff9d77"/>
<stroke
android:width="2dp"
android:color="#fad3cf" />
<corners
android:topRightRadius="5dp"
android:bottomLeftRadius="5dp"
android:topLeftRadius="0dp"
android:bottomRightRadius="0dp"
/>
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
</selector>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.