Android簡單酷炫點擊動畫(附源碼)

在Android5.0以前,
Android的點擊效果一直很low,
即便5.0的波紋效果也不盡如人意。android

而我以前寫過一種比較酷炫的點擊效果,
最近抽了點時間完善一下,
把陰影效果加入了進去,
你們先睹爲快。git

Bamboy點擊動畫

使用起來很簡單,
只需兩步。程序員

第一步:
把我項目裏的包複製到你得項目裏,
以下圖:
BamboyUI包github

第二步:
把XML佈局文件裏,
有點擊事件的View,
替換成個人BamView便可,
Java代碼無須修改。佈局

好比,性能

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:layout_width="300dp"
        android:layout_height="180dp"
        android:layout_margin="10dp"
        android:background="#FFFFFF"
        android:scaleType="fitXY"
        android:src="@drawable/picture"
        android:translationZ="10dp" />

</RelativeLayout>

你的需求是點擊圖片,
那麼就把ImageView換成個人BamImageView便可,
以下:動畫

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.bamboy.bamUI.BamImageView
        android:layout_width="300dp"
        android:layout_height="180dp"
        android:layout_margin="10dp"
        android:background="#FFFFFF"
        android:scaleType="fitXY"
        android:src="@drawable/picture"
        android:translationZ="10dp" />

</RelativeLayout>

沒錯,
塵少的風格,
就是這麼簡單,
既然寫這個玩意兒是爲了方便同行,
那固然是使用起來越簡單越好,
程序員何苦爲難程序員。spa

可是,
有幾點注意事項仍是要跟你們夥兒說清楚的,.net

一、關於陰影效果code

我以前遇到這樣一個坑,
    Android 5.0之後,
    想要陰影效果,
    設置translationZ屬性便可,
    可是我設置該屬性後卻沒有任何陰影,
    網上查找資料也沒能解決。
    
    最後發現是個人View沒有設置background屬性,
    因此纔沒有陰影效果的。
    
    好比ImageView,
    你設置了src都不行,
    必需要設置background屬性。
    
    並且background透明度越低,
    陰影的效果也就越低。

二、關於效果

我爲你們提供的,
    有兩種點擊效果,
    
    第一種是華麗效果,
    即上邊GIF裏你們看到的效果;
    
    第二種是縮放效果,
    它與華麗效果的區別在於,
    使用默認的華麗效果時,
    點擊View的上、下、左、右、中,
    分別對應的5種不同的動畫:
    
    上 ————> 後翻
    下 ————> 前翻
    左 ————> 左側翻
    右 ————> 右側翻
    中 ————> 縮放
    
    而縮放效果,
    不管點擊哪一個位置,
    都只有縮放的動畫。
    
    而想要切換效果也很簡單:
    先把View轉爲BamView,
    而後調用closeSuperb()便可。
    
    如:
    ((BamImageView)iv_bam).closeSuperb();

三、關於點擊事件

我建議哪一個View須要這種效果,
    就給哪一個View加,
    其餘的View就不要加了,
    不只爲性能考慮,
    更爲了用戶體驗考慮。

塵少的規矩,附源碼:
http://download.csdn.net/down...

若是以爲塵少的Demo還不錯的話,
能夠克隆個人Git倉庫,
各類酷炫效果收入囊中:
https://github.com/Bamboy1203...
手機掃碼下載App一睹爲快:

相關文章
相關標籤/搜索