Android 水波紋ripple統一新增說明

2021-10-09 14:38:58 字數 2870 閱讀 5874

目前幾種水波紋效果說明:

1、圓形無邊界(一般用作父布局背景或前)

2、圓形有邊界(常用,一般用作父布局背景或前景)

3、方形有邊界(常用,一般用作父布局背景或前景)

4、圖形表面水波紋(常用,易被忽略的重點)

5、水波紋和selector配合(常用,一般用作有選中效果的布局)

android系統已經提供給我們有邊界和無邊界(圓形)的效果(api要求21以上,如果沒效果加上android:clickable="true"

android:background=

"?android:attr/selectableitembackground"

android:background=

"?android:attr/selectableitembackgroundborderless"

但是,預設的效果顏色並不一定能滿足開發(ui~)的要求

所以,我們要自定義自己想要的效果

通過android:background="@drawable/ripple。。。"設定

下面,就幾種水波紋效果一一介紹

主專案drawable-v21和drawable中已加入以下所有**

1. ripple_bright_oval_no_mask(圓形無邊界亮色水波紋,暗色為ripple_dark_oval_no_mask)

drawable-v21:

""

android:color=

"@color/ripple_bright_color"

>

<

/ripple>

drawable:

""

>

"@color/ripple_bright_color" android:state_pressed=

"true"

/>

"@color/ripple_bright_color" android:state_focused=

"true"

/>

"@color/transparent"

/>

<

/selector>

沒錯,就是這麼簡單,後面不再貼上5.0以下**

2. ripple_bright_oval(圓形有邊界亮色水波紋,暗色為ripple_dark_oval)

文章開頭說了這些效果的使用位置,水波紋可以使用在背景和前景上

當要加水波紋的區域layout為framelayout(實測relativelayout也適用)時,可以給布局加上android:foreground="@drawable/ripple_bright_rectangle"實現水波紋浮現在布局上面的效果

""

android:color=

"@color/ripple_dark_color"

>

"@android:id/mask"

>

"oval"

>

"?android:coloraccent"

/>

<

/shape>

<

/item>

<

/ripple>

3. ripple_bright_rectangle(方形有邊界亮色水波紋,暗色為ripple_dark_rectangle)

""

android:color=

"@color/ripple_bright_color"

>

"@android:id/mask"

android:drawable=

"?android:coloraccent"

/>

<

/ripple>

4. 重點:圖形表面水波紋

只是把內容換成相應的或者圖形即可

ic_go_material_store_selector.xml

""android:color=

"@color/ripple_bright_color"

>

"@drawable/ic_effects_download"

/>

<

/ripple>

btn_orange_20_corners_selector.xml

""android:color=

"@color/ripple_bright_color"

>

"@color/coloraccent"

/>

"@dimen/vsc_bt_corners_radius_size"

/>

<

/shape>

<

/item>

<

/ripple>

5.如果在乙個ripple標籤中,新增乙個item,在item的內部寫上標籤,那麼這個rippledrawable在按下的時候,同時具有水波效果和selector指定的圖層。

""

android:color=

"@color/ripple_bright_color"

>

android:drawable=

"@color/edit_panel"

android:state_selected=

"true"

/>

<

/selector>

<

/item>

<

/ripple>

android屬性動畫繪製水波紋

思路 通過屬性動畫 valueanimator特性不停的執行二階貝塞爾曲線函式,view不停的重繪,就達到繪製水波紋的效果了開始屬性動畫 public void startanimation valueanimator.start 開始繪製曲線 override protected void ond...

水波紋特效新增

1 listview 自定義的mylistview gridview新增水波紋特效需在列表控制項中設定 android drawselectorontop true android listselector android selectableitembackground 2 recyclervie...

shader uv動畫水波紋

效果 讓波紋在鯊魚身上動 設計思路 模型上有多個貼圖,找到一張黑色背景的貼圖 我們這裡貼圖使用的疊加的方式,而黑色背景的貼圖,黑色 0,0,0,0 不會產生任何影響 在unity中找到乙個模型,找到它的材質面板,建立乙個shader unlit shader shader custom bigfis...