Android中shape的自定義藝術(shù)效果使用
shape形狀之意,可自定義各種形狀,如背景橢圓,圓角等等
創(chuàng)建目錄:drawable–右鍵–new–drawable resourse file–鍵入文件名my_shape–ok–修改selector標簽為shape
1圓角
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="10dp"/> </shape>
引用:android:background="@drawable/my_shape"
<Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="148dp" android:layout_marginTop="102dp" android:background="@drawable/my_shape" android:text="Button" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />
2 單獨控制某個圓角,如左上,右下。
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:topLeftRadius="10dp" android:bottomRightRadius="10dp" /> </shape>
3 圓形背景
前提button寬高一樣,圓角大小為button的一半大
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="100dp"/> </shape>
<Button android:id="@+id/button" android:layout_width="200dp" android:layout_height="200dp" android:layout_marginStart="148dp" android:layout_marginTop="102dp" android:background="@drawable/my_shape" android:text="Button" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" />
3 描邊效果
注意此時用textview引用,botton無效
solid:實體,可設(shè)置主體顏色
stroke:描邊,dashWidth虛線寬度,dashGap虛線間的距離
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <corners android:radius="50dp"/> <size android:height="100dp" android:width="100dp"/> <solid android:color="#FF4081"/> <stroke android:width="5dp" android:color="#3F51B5" android:dashWidth="20dp" android:dashGap="10dp"/> </shape>
引用
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="148dp" android:layout_marginTop="102dp" android:background="@drawable/my_shape" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
4漸變色
gradient:傾斜度,標簽實現(xiàn)
紅綠藍
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#ff0000" android:centerColor="#00ff00" android:endColor="#0000ff" /> </shape>
引用
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="148dp" android:layout_marginTop="102dp" android:text="Hello world" android:background="@drawable/my_shape_gradient" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
拓展
1gradient標簽默認類型是線性的android:type=“linear”,還有一種炫酷的效果是掃射sweep
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#ff0000" android:centerColor="#00ff00" android:endColor="#0000ff" android:type="sweep" /> </shape>
2確定逆時針旋轉(zhuǎn)的角度angle屬性,如android:angle="90"表示逆時針轉(zhuǎn)90度
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#ff0000" android:centerColor="#00ff00" android:endColor="#0000ff" android:angle="90" android:type="linear" /> </shape>
最后來一個好叼的樣子
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="@color/black" android:endColor="@color/black" android:centerColor="#FFFFFF" android:type="sweep"/> </shape>
到此這篇關(guān)于Android中shape的自定義藝術(shù)效果使用的文章就介紹到這了,更多相關(guān)Android shape內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android CalendarView,DatePicker,TimePicker,以及NumberPicker的使
這篇文章主要介紹了Android CalendarView,DatePicker,TimePicker,以及NumberPicker的使用的相關(guān)資料,需要的朋友可以參考下2016-12-12Android使用SqLite實現(xiàn)登錄注冊功能流程詳解
這篇文章主要介紹了使用Android Studio自帶的sqlite數(shù)據(jù)庫實現(xiàn)一個簡單的登錄注冊功能,SQLite是一個軟件庫,實現(xiàn)了自給自足的、無服務器的、零配置的、事務性的SQL數(shù)據(jù)庫引擎,本文給大家介紹的非常詳細,需要的朋友可以參考下2023-12-12Android Google AutoService框架使用詳解
AutoService是Google開發(fā)一個自動生成SPI清單文件的框架??催^一些基于APT的三方框架源碼的讀者應該有所了解。比如Arouter、EventBus等等2022-11-11Android自定義View圖片按Path運動和旋轉(zhuǎn)
這篇文章主要為大家詳細介紹了Android自定義View圖片按Path運動和旋轉(zhuǎn),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01