CustomShapeImageView是Android開發的第三方類庫,具有不限於圓形ImageView的多種形狀ImageView,項目開發必備
github下載地址:https://github.com/MostafaGazar/CustomShapeImageView
1、首先源碼中有一個第三方類庫 :library
先要把Library匯入到項目中,
如果你會匯入季,直接跳過
關於Eclipse 和 IDEA 匯入library庫檔案 的步驟
這裡我們以PullToRefresh(上拉重新整理下拉載入)組件的library為例
下載地址:
https://github.com/chrisbanes/Android-PullToRefresh
現在我們需要把library檔案夾匯入到Eclipse或者IDEA中去
一、IDEA 匯入library庫檔案步驟
1、首先我們要有一個項目,沒有的就建立一個吧
2、右擊項目名稱點擊Open Module Settings(F4)
3、可以看到這樣的介面
接下來在中間部分 點擊綠色的加號 匯入Module
找到要匯入的library類庫的目錄
點擊OK 後,,新的介面選擇 第一個選項 Create module from existing sources,然後下一步知道import操作完成
4、然後就可以看到這樣的介面,中間介面 多了一個library檔案夾
5、接著點擊最右邊介面的綠色加號按鈕 選擇第三個Module Dependency,注意中間部分要選擇你要匯入library庫檔案的目錄,即此時在中間介面選中demo檔案夾,在按綠色按鈕添加
6、可以看到有library檔案夾可以選擇 選擇OK就行了 然後OK 結束設定
7、這是就可以看到你的項目裡多了一個library檔案夾
開啟library檔案夾可以看到檔案夾內容都在,
8、我們在主Activity中添加一個library 提供的類檢查是否匯入成功,不報錯可匯入成功
二、Eclipse 匯入library庫檔案步驟
1、匯入
2、選擇 Android/Existing Android Code Into Workspace
3、選擇library檔案夾目錄 ,記得選中 Copy projects into workspace
4、可以看到項目目錄多了library
5、右鍵library 選擇properties (在最下面)
點擊is Library --》ok
6、然後右擊要匯入library庫檔案的的項目 選擇properties 添加Add 選擇要匯入的library檔案夾
7、然後使用library庫檔案提供的類檢測是否匯入正確 (注意項目和library庫檔案需要在同一個目錄下,即同一個工作空間)
繼續講解CustomShapeImageView類庫
2、源碼中res檔案夾下有一個raw檔案夾 複製到自己的項目中(選擇性複製,是一些特殊的圖形)
可以看到這裡有一堆.svg格式的檔案。
SVG可以算是目前最最火熱的圖片檔案格式,這裡作者已經給我們寫好了幾個特殊的圖形
如果想要自訂更多形狀的話,可以學習下SVG
1、shape_5.svg 五邊形
2、shape_circle_2.svg 貝殼形
3、shape_flower.svg 花形
4、shape_heart.svg 心形
5、shape_star 星形1
6、shape_star 星形2
7、shape_star 星形3
3、接下來就是使用了
如果我們使用raw檔案夾下的svg寫的形狀作為ImageView的形狀
則:這裡一個app:svg_raw_resource="@raw/shape_star_3" 這裡就是指定圖片形狀為res/raw檔案夾下的哪一個
<com.meg7.widget.SvgImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/hydrangeas"
app:svg_raw_resource="@raw/shape_star_3"
android:scaleType="centerCrop" />
重點來了:
實際開發,最常用的莫過於圓形圖片了,那麼上面幾個都是特殊圖形,要使用圓形ImageView怎麼辦?
看類庫,幾個源碼
BaseImageView.java 是基本類
而CircleImageView.java類則是繼承BaseImageView.java的類,用於圓形ImageView
使用: 這個就簡單了,和普通ImageView一樣使用,標籤變了而已
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/hydrangeas"
android:scaleType="centerCrop" />
長方形ImageView :RectangleImageView.java
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/hydrangeas"
android:scaleType="centerCrop" />
以上便是主要需要的部分了。
源碼中CustomShapeImageView.java看了下源碼是預設顯示圓形圖片的ImageView,裡面有圓形,方形,自訂形,看情況使用了,個人感覺,以上的幾個使用起來就足夠了。