日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android中shape的使用

發布時間:2025/7/25 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android中shape的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.




引言

Android中常常需要用到一些邊框、背景之類的素材,而這些很多時候不是通過美工人員P圖得到的,而是通過shape標簽來實現的。今天就探究一下shape到底怎么用以及相關的一些特性。

shape的定義

本來想在網上找點簡單易懂的中文解釋,搜了半天沒看到,于是乎就上Android官網上看了看,官網的解釋是:

An XML file that defines a geometric shape, including colors and gradients.
  • 1
  • 1

大概意思就是:一種定義形狀的xml文件,包括顏色、漸變。其實還包括圓角、內間距、邊框等。總之是一種用于定義形狀資源的文件。

shape使用

舉一個小例子先看看

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle" ><!-- 邊框 --><stroke android:width="2dp"android:color="#FFFFFF"/><!-- 圓角 --><corners android:radius="8dp"/><!--填充--><solid android:color="#00000000"/> </shape>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

作為背景用于TextView

android:background="@drawable/recetegle_textview"
  • 1
  • 1

效果:

shape屬性詳解

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle" ><!--屬性--> </shape>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

這是shape文件的基本格式。?
根標簽是shape,其中屬性:android:shape="……"是必要屬性,它規定shape的基本形狀。

android:shape

它可選的值如下:

rectangle //矩形 oval //橢圓 line //線 ring //圓環
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

android:shape=ring時的特殊屬性

android:innerRadius="dimension" //內環的半徑。 android:innerRadiusRatio="float" //這個值表示內部環的比例,例如,如果android:innerRadiusRatio = " 5 ",那么內部的半徑等于環的寬度除以5。這個值會被android:innerRadius重寫。 默認值是9android:thickness="dimension" //環的厚度. android:thicknessRatio="float" //厚度的比例。例如,如果android:thicknessRatio= " 2 ",然后厚度等于環的寬度除以2。這個值是被android:innerRadius重寫, 默認值是3android:useLevel="boolean" //如果用在 LevelListDrawable里,那么就是true。如果通常不出現則為false。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

子屬性

自屬性是包含在shape內部的一些屬性,主要包括:

corners //圓角 gradient//漸變 padding //內邊距 size //大小 solid //填充 stroke //邊框
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

corners 圓角

<cornersandroid:radius="dimension" //圓角,比如8dp、5dp等等android:topLeftRadius="dimension" //左上圓角,比如8dp、5dp等等android:topRightRadius="dimension" //右上圓角,比如8dp、5dp等等android:bottomLeftRadius="dimension" //左下圓角,比如8dp、5dp等等android:bottomRightRadius="dimension" />//左下圓角,比如8dp、5dp等等
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

gradient漸變

<gradientandroid:angle="integer" //漸變角度,默認為0,即從左向右,90為從下向上。值必須是45的倍數android:centerX="float" //漸變中心X,相對位置與整個shape的X的相對位置,取值范圍0.0~1.0 android:centerY="float" //同X android:centerColor="color" //介于end和start之間的顏色android:endColor="color" //結束顏色 android:gradientRadius="integer" //漸變半徑,只有當type="radial"時生效 android:startColor="color" //開始顏色android:type="linear" //漸變模式,可選的值有:linear線型,radial放射型,sweep范圍型(這個真不知道怎么翻譯)android:useLevel="boolean" /> //使用級別,默認為false,當用于levelListDrawable時設為true。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

padding 內邊距

<paddingandroid:left="dimension" //左android:top="dimension" //上android:right="dimension" //左 android:bottom="dimension" /> //下
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

size 大小

<sizeandroid:width="dimension" //寬android:height="dimension" /> //高
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

solid 填充

<solidandroid:color="color" /> //填充顏色
  • 1
  • 2
  • 1
  • 2

stroke 邊框

<strokeandroid:width="dimension" //邊框寬android:color="color" //邊框顏色android:dashWidth="dimension" //虛線寬度,只有當設置了dashGap時有效android:dashGap="dimension" /> //虛線間距,只有當設置了dashWidth時有效
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

ShapeDrawable

ShapeDrawable是一個Drawable的子類用與繪制原始的shape。這里不再展開了。?
需要詳細了解的同學看這里

總結

shape是一個很好的繪制圖片的工具,如果用好了,可以繪制出很棒的效果。?
我畫了個球,哈哈哈。

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="oval"><gradient android:startColor="#FFFFFF"android:endColor="#000000"android:centerX="0.6"android:centerY="0.4"android:type="radial"android:gradientRadius="25dp"/><size android:height="50dp"android:width="50dp"/></shape>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

總結

以上是生活随笔為你收集整理的Android中shape的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 男人插女人的网站 | 一本—道久久a久久精品蜜桃 | 成人毛片在线视频 | 手机在线观看av网站 | 国产高中女学生第一次 | 国产一在线| 另类亚洲激情 | 亚洲天堂网在线视频 | 国产精品一区二区三区免费看 | 一本一道无码中文字幕精品热 | 国产白浆在线观看 | 毛茸茸多毛bbb毛多视频 | 天堂在线91 | 国产三区在线视频 | 久久青草免费视频 | 毛片a区 | 国产小视频免费观看 | 亚洲国产一区二区三区a毛片 | 久久av中文字幕 | 欧美性猛交xxxxx水多 | 亚洲AV成人无码久久 | 国产精品成人aaaa在线 | 性视频黄色 | 天天干狠狠插 | 精品国产大片大片大片 | 一区二区三区国产av | 中文字幕高清在线免费播放 | 欧美大片黄色 | 久色电影 | 男人插女人视频网站 | 麻豆久久久午夜一区二区 | 日本免费黄色网址 | 中文字幕一区二区三区在线不卡 | 国产精品jizz | 上原亚衣在线 | 精品国产一区三区 | 欧美亚洲天堂网 | 国产精品一二三四五区 | 中国精品久久 | 日韩亚洲欧美在线 | 国产黄色大片网站 | 国产精欧美一区二区三区白种人 | 狠狠干老司机 | 两个小y头稚嫩紧窄h文 | 中国字幕av | 伊人网中文字幕 | 国产特级黄色片 | 男人添女人荫蒂国产 | 精品久久久免费 | 久久精品久久久久 | 国产精品人成 | 日韩中文字 | 亚洲一线二线在线观看 | av男人的天堂在线 | 五月天综合视频 | 天天插天天爽 | 国产成人av电影 | 一区二区国产在线观看 | 亚洲涩涩 | 特级西西444www| www.日本在线观看 | 美女福利在线视频 | 黄色av地址 | 国产日批视频 | 超碰www| 日本偷拍一区 | 台湾150部性三级 | 一区一区三区产品乱码 | 久色99 | 高清av不卡 | 午夜激情影视 | 精品国产午夜 | 二区三区在线观看 | 国产欧美a | 久久99精品国产麻豆婷婷洗澡 | 中文字幕高清在线观看 | 看片网址国产福利av中文字幕 | 99国产精品一区二区 | 天天色av | 欧洲免费毛片 | 在线免费观看 | 双性人hdsexvideos | 亚洲AV成人无码久久精品同性 | 欧美做受xxxxxⅹ性视频 | 超级碰在线观看 | av女优天堂在线观看 | 欧美激情一二三区 | 日韩精品一区二区在线 | 蜜桃av噜噜一区二区三区麻豆 | 亚洲乱轮视频 | 欧美一区二区三区免费看 | 日本一区二区在线视频 | 色99视频| 古装做爰无遮挡三级视频 | 亚洲高清无码久久 | 婷婷.com| 国产91丝袜在线播放 | 欧美午夜精品 | 美女被男人插 |