使用translationZ的屬性使按鈕在z軸方向上移,并且設(shè)置上移的時(shí)間,產(chǎn)生懸浮動(dòng)畫的效果。
創(chuàng)新互聯(lián)公司長(zhǎng)期為成百上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為恩施土家企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站設(shè)計(jì),恩施土家網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
再次使用translationZ設(shè)置按鈕在z軸方向下移,回到原位。
效果:
Android在5.0版為Button默認(rèn)添加了點(diǎn)擊時(shí)的漣漪效果,而且在其他的控件上也可以輕松的實(shí)現(xiàn)這種炫酷的效果。
我們只需要在控件的android:backgroud 屬性上進(jìn)行設(shè)置即可。
如果控件已經(jīng)使用了android:background屬性去設(shè)置背景色或者背景圖片,但是有想要有點(diǎn)擊時(shí)的漣漪效果。那么我們可以考慮在android:foreground屬性中設(shè)置漣漪效果,這樣同樣可以達(dá)到點(diǎn)擊時(shí)產(chǎn)生漣漪,也不會(huì)影響我們對(duì)控件背景的設(shè)置。
不過(guò)對(duì)于默認(rèn)無(wú)法點(diǎn)擊的控件,還要記得設(shè)置android:clickable為true。另外還要注意,如果Android版本過(guò)低,無(wú)邊界的漣漪效果可能無(wú)法很好的展。
有邊界的漣漪效果:
無(wú)邊界的漣漪效果:
除了進(jìn)行上面的設(shè)置之外,還要記得設(shè)置控件為可點(diǎn)擊的
主要是在資源文件夾里創(chuàng)建.xml文件:
1.沒有邊界的Ripple(Ripple With No Mask)
2.用顏色作為Mask的Ripple(Ripple With Color Mask),然而顏色并沒有什么卵用
3.用圖片作為Mask的Ripple(Ripple With Picture Mask)
4.用設(shè)定形狀作為Mask的Ripple(Ripple With Shape Mask)
5.搭配selector作為Ripple(Ripple With Selector)
參考文檔:
Android Ripple的詳解
在Android開發(fā)中,是不能取消點(diǎn)擊效果的,但是在開發(fā)中要給ListView取消點(diǎn)擊效果是設(shè)置點(diǎn)擊后的效果為透明色,這樣就可以認(rèn)為是取消了點(diǎn)擊效果,設(shè)置方法如下:
1、首先使用Android studio創(chuàng)建一個(gè)Android項(xiàng)目,如下圖:
2、打開該項(xiàng)目的布局文件,如下圖所示:
3、添加一個(gè)ListView控件,并設(shè)置其寬高,如下圖:
4、添加android:listSelector="@android:color/transparent",@android:color/transparent表示為android源碼中自定義的顏色,顏色為透明色
可以使用這樣的一個(gè)xml布局
?xml version="1.0" encoding="utf-8"?
selector xmlns:android=""
// 獲取焦點(diǎn)時(shí)候按鈕的背景狀態(tài)
item android:drawable="@drawable/btn_green_pressed" android:state_enabled="true" android:state_focused="true"/
// 被按下時(shí)候按鈕的背景狀態(tài)
item android:drawable="@drawable/btn_green_pressed" android:state_enabled="true" android:state_pressed="true"/
//正常狀態(tài)下按鈕的狀態(tài)
item android:drawable="@drawable/btn_green_normal"/
/selector
把按鈕的背景設(shè)置為這個(gè)布局引用就行了.試試吧騷年
//加入這個(gè)即可
android:background="?android:attr/selectableItemBackground"
Android 5.0中新增了ripple類型,即波紋效果
這里要注意,波紋效果只在5.0以上的設(shè)備生效,要實(shí)現(xiàn)此種效果,我們需要在res中添加一個(gè)新的文件夾drawable-v21用于保存波紋效果.
波紋效果具體實(shí)現(xiàn)效果有以下幾種:
ripple標(biāo)簽,即對(duì)應(yīng)一個(gè)RippleDrawable,當(dāng)它被設(shè)置為一個(gè)控件的background屬性時(shí),控件在按下時(shí),即會(huì)顯示水波效果
drawable-v21文件夾下 ripple_with_no_mask.xml
使用方法:
在ripple標(biāo)簽中,添加一個(gè)item,其drawable屬性為引用的顏色(color) ,則水波效果會(huì)限定在drawable對(duì)應(yīng)的RippleDrawable本身矩形區(qū)域內(nèi)部,這里顏色的一個(gè)作用是限定邊界.
drawable-v21文件夾下 ripple_with_color_mask.xml
需要注意的是:
這里指定id為@android:id/mask,那么默認(rèn)是不會(huì)顯示該drawable,而是在點(diǎn)擊的時(shí)候出現(xiàn);
如果不指定,那么在顯示的時(shí)候會(huì)顯示出item指定的drawable
在ripple標(biāo)簽中,添加一個(gè)item,其drawable屬性為引用的圖片,則水波效果會(huì)限定在圖片drawable中非透明部分對(duì)應(yīng)的區(qū)域內(nèi)部.
drawable-v21文件夾下 ripple_with_picture_mask.xml
在ripple標(biāo)簽中,添加一個(gè)item,drawable屬性為引用的形狀(shape) ,則水波效果會(huì)限定在shape對(duì)應(yīng)的區(qū)域內(nèi)部.
drawable-v21文件夾下 ripple_with_shape_mask.xml
在ripple標(biāo)簽中,添加一個(gè)item,在item的內(nèi)部寫上selector標(biāo)簽,那么這個(gè)RippleDrawable在按下的時(shí)候,同時(shí)具有水波效果和selector指定的圖層.
drawable-v21文件夾下 ripple_with_selector.xml
至此,文章結(jié)束,希望此文能幫助到你,如果對(duì)此文有不同見解,歡迎直接評(píng)論!
參考:
Android L Ripple的使用
Android5.0適配——水波紋點(diǎn)擊效果
分享文章:android點(diǎn)擊效果,android點(diǎn)贊效果
當(dāng)前鏈接:http://jinyejixie.com/article16/dsechgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站內(nèi)鏈、小程序開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)