Android shape 的詳解及使用
一,概述
我們在android開發中經常要用到圖片,而一些簡單的圖片我們完全可以用shape形狀drawable資源代替,使用shape有一個好處就是可以減小我們apk的大小,因為同樣的效果,shape比圖片更節省空間,好了,我們廢話不多說,下面進入正題。
二,shape初識
shape是android drawable資源中的一個重要的角色,drawable資源覆蓋面廣,它不僅代表圖片,它可以是一個顏色,一個形狀,因為shape其簡單實用,下面我們來看一下shape形狀的分類:
rectangle:
rectangle代表者矩形,它是shape預設的形狀型別,即如果我們不在shape的android:shape
屬性指定其型別時,預設是矩形,用它我們可以畫一個矩形,圓角矩形,具體在下面會說道
oval:
ovel,橢圓,用它可以畫橢圓,圓
line:
水平線,在使用該形狀的時候,我們得給它指定stroke元素指定其寬度,不然在使用該形狀的時候會報空指標異常
ring:
環形
下面我們來用上面說道的各種形狀畫圖形,打造各種簡單的形狀
三,shape的使用
下面看看用shape畫的一些簡單的圖形,之後我會按照圖形說一下shape的各種屬性以及一些要注意的問題:
上面的一些圖形都是用shape畫出來的,第一二行的是矩形(rectangle)的一些簡單的形狀
我們來看一下第一二行的圖形實現的xml程式碼,其他圖形的就不貼了,不然文章篇幅太大了:
- 第一個
- <shape xmlns:android="http://schemas.android.com/apk/res/android"
>
<!-- 設定固定填充色 -->
<solid android:color="#f00" />
<size android:width="60dp" android:height="30dp"/>
</shape> - 第二個
- <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<size android:width="60dp" android:height="30dp"/>
<!-- 設定漸變填充色 -->
<gradient android:startColor="#00f" android:centerColor="#0f0" android:endColor="#f00"></gradient>
</shape> - 第三個
- <shape xmlns:android="http://schemas.android.com/apk/res/android"
>
<size android:width="60dp" android:height="30dp"/>
<!-- 設定描邊 -->
<stroke android:width="2dp" android:color="#f00" ></stroke>
</shape> - 第四個
- <shape xmlns:android="http://schemas.android.com/apk/res/android"
>
<size android:width="60dp" android:height="30dp"/>
<!-- 設定描邊 -->
<stroke android:width="2dp" android:color="#f00" android:dashWidth="5dp" android:dashGap="5dp"></stroke>
</shape> - 第五個
<shape xmlns:android="http://schemas.android.com/apk/res/android" > <size android:width="60dp" android:height="30dp"/> <!-- 設定描邊 --> <stroke android:width="2dp" android:color="#f00" android:dashWidth="5dp" android:dashGap="5dp"></stroke> <corners android:radius="15dp"/> </shape>
相關文章
- Android shape的使用詳解Android
- android shape的使用Android
- Android中shape的使用Android
- Android:使用shape製作素材Android
- Android shape的用法Android
- 詳解Android RxJava的使用AndroidRxJava
- Git詳解及github的使用Github
- android shape的使用詳解以及常用效果(漸變色、分割線、邊框、半透明陰影效果等)Android
- Android shape與selector標籤使用Android
- 詳解Android中AsyncTask的使用Android
- Android Gson使用詳解Android
- Android Paint 使用詳解AndroidAI
- Android AsyncTask使用詳解Android
- Android webview使用詳解AndroidWebView
- Android ViewPager使用詳解AndroidViewpager
- Android 中 Canvas 繪圖之 PorterDuffXfermode 使用及工作原理詳解AndroidCanvas繪圖
- Android中Canvas繪圖之PorterDuffXfermode使用及工作原理詳解AndroidCanvas繪圖
- Android UI美化之 shape的使用及其屬性總結AndroidUI
- Android的shape和顏色選擇器結合使用Android
- Docker的安裝配置及使用詳解Docker
- Android BroadcastReceiver使用詳解AndroidAST
- Android AIDL使用詳解AndroidAI
- Android Support Annotations 使用詳解Android
- Android中PopupWindow使用詳解Android
- Android中AsyncTask使用詳解Android
- Android 使用AsyncTask非同步的介紹及多例項並行方案詳解Android非同步並行
- websocket 歷史及使用詳解Web
- FTP命令詳解及使用技巧FTP
- Android EventBus3.x的使用詳解AndroidS3
- Android Resources 資原始檔的使用詳解Android
- 圖文詳解Andorid中用Shape定義GradientDrawable
- Android-SharedPreferences 使用詳解Android
- Android FragmentTabHost 使用方法詳解AndroidFragment
- Android taskAffinity屬性使用詳解Android
- Android 中 HttpURLConnection 使用詳解AndroidHTTP
- Android中HttpURLConnection使用詳解AndroidHTTP
- dva框架使用詳解及Demo教程框架
- Android 整合 Flutter 及通訊互動詳解AndroidFlutter