Android进阶之路 - 水波纹的点击效果
2017-06-19 18:28
267 查看
看了几篇文章,文章所言要实现水波纹的效果需要最小编译版本为21,之前我只是认为5.0之后,手机会自带水波纹,明显有些错误
Effect :
![](https://img-blog.csdn.net/20170619182806066?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjA0NTE4Nzk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
build :
if (minSdkVersion 21 = true){
can user ripple
}
如上所诉sdk21之后,可以使用ripple,而ripple便是实现水波纹的一个关键,我们在drawable 创建一个xml ,以ripple为最外层
ripple_bg.xml :
rounded_corners.xml(这个写不写,我觉得无所谓) :
MainActivity :
MainActivity Xml :
Effect :
build :
minSdkVersion 21
if (minSdkVersion 21 = true){
can user ripple
}
如上所诉sdk21之后,可以使用ripple,而ripple便是实现水波纹的一个关键,我们在drawable 创建一个xml ,以ripple为最外层
ripple_bg.xml :
<?xml version="1.0" encoding="utf-8"?> <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="#FF21272B"> <item> <shape android:shape="rectangle"> <solid android:color="#FFFFFF" /> <corners android:radius="4dp" /> </shape> </item> <!--下面这一行, 写不写貌似无所谓--> <item android:drawable="@drawable/rounded_corners" /> </ripple>
rounded_corners.xml(这个写不写,我觉得无所谓) :
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#FFFFFF" /> <corners android:radius="4dp" /> </shape>
MainActivity :
package com.example.dow.watereffect; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private TextView mBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mBtn = (TextView) findViewById(R.id.tv_btn); //如果不设置点击事件,水波纹是没有效果的 mBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { } }); } }
MainActivity Xml :
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.dow.watereffect.MainActivity"> <TextView android:layout_centerInParent="true" android:id="@+id/tv_btn" android:background="@drawable/ripple_bg" android:layout_width="match_parent" android:padding="8dp" android:layout_height="wrap_content" android:gravity="center" android:text="Sdk21才能用的水波纹?" /> </RelativeLayout>
相关文章推荐
- android 控件点击波纹效果
- Android Material适配 为控件设置指定背景色和点击波纹效果
- Android 水波纹点击效果(Ripple Effect)
- Android 具有水波纹点击效果的Tab切换
- Android之实现点击波纹效果
- Android 水波纹点击效果(Ripple Effect)
- Android特效专辑(十)——点击水波纹效果实现,逻辑清晰实现简单
- Android 实现所有View的点击水波纹效果
- Android riple material 点击水波纹效果
- Android 实现水波纹点击效果(Ripple Effect)
- Android 水波纹点击效果(Ripple Effect)
- Android 设置主题实现点击波纹效果
- Android点击Button水波纹效果
- Android 点击水波纹扩散效果( Ripple Effect )
- Android点击屏幕出现水波纹效果
- Android源码解析--Material Design之水波纹点击效果RippleEffect使用
- Android实现点击Button产生水波纹效果
- Android点击Button水波纹效果
- Android Material适配 为控件设置指定背景色和点击波纹效果
- android点击波纹效果