学习笔记
1.效果图
2.使用方法
// 添加依赖
implementation 'com.sackcentury:shinebutton:0.2.0'
复制代码
3.ShineButton常用的方法说明
常用的方法说明 | ||
---|---|---|
Property | Java method | Description |
siShape | void setShapeResource(int) | 设置原始资源(png) |
btn_color | void setBtnColor(int) | 设置初始颜色 |
btn_fill_color | void setBtnFillColor(int) | 设置点击后设置填充颜色 |
allow_random_color | void setAllowRandomColor(boolean) | 设置点击后动画颜色是否随机 |
shine_animation_duration | void setAnimDuration(int) | 设置动画时间 |
big_shine_color | void setBigShineColor(int) | 设置动画大半径圆圈的颜色 |
click_animation_duration | void setClickAnimDuration(int) | 设置点击动画持续时间 |
enable_flashing | void enableFlashing(boolean) | 是否启用闪光效果 |
shine_count | void setShineCount(int) | 设置圆点的个数 |
shine_distance_multiple | void setShineDistanceMultiple(float) | 设置距离到按钮的倍数 |
shine_turn_angle | void setShineTurnAngle(float) | 设置动画旋转角度 |
shine_size | void setShineSize(int) | 设置闪光尺寸大小 |
small_shine_color | void setSmallShineColor(int) | 设置动画小半径圆圈的颜色 |
small_shine_offset_angle | void setSmallShineOffAngle(float) | 设置大小点之间偏移 |
4.附上demo代码:
①Activity:
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@BindView(R.id.po_image0)
ShineButton shineButton0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
shineButton0.init(this);
shineButton0.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.po_image0:
Log.e("按钮0是否被选中--->",shineButton0.isChecked()+"");
// code
break;
default:
break;
}
}
}
复制代码
② Xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="30dp"
android:paddingTop="30dp"
tools:context=".MainActivity">
<LinearLayout
android:id="@+id/wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:orientation="horizontal">
<com.sackcentury.shinebuttonlib.ShineButton
android:id="@+id/po_image0"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:layout_marginLeft="60dp"
app:btn_color="@android:color/darker_gray"
app:btn_fill_color="#999933"
app:siShape="@raw/heart" />
<com.sackcentury.shinebuttonlib.ShineButton
android:id="@+id/po_image1"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:layout_marginLeft="20dp"
android:src="@android:color/darker_gray"
app:allow_random_color="false"
app:big_shine_color="#FF6666"
app:btn_color="@android:color/darker_gray"
app:btn_fill_color="#FF6666"
app:click_animation_duration="200"
app:enable_flashing="false"
app:shine_animation_duration="1500"
app:shine_count="15"
app:shine_distance_multiple="1.5"
app:shine_turn_angle="10"
app:siShape="@raw/like"
app:small_shine_color="#CC9999"
app:small_shine_offset_angle="20" />
<com.sackcentury.shinebuttonlib.ShineButton
android:id="@+id/po_image2"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:layout_marginLeft="20dp"
android:src="@android:color/darker_gray"
app:allow_random_color="true"
app:btn_color="@android:color/darker_gray"
app:btn_fill_color="#F44336"
app:siShape="@raw/smile" />
<com.sackcentury.shinebuttonlib.ShineButton
android:id="@+id/po_image3"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerInParent="true"
android:layout_marginLeft="20dp"
app:btn_color="@android:color/darker_gray"
app:btn_fill_color="#996699"
app:enable_flashing="true"
app:shine_size="40dp"
app:siShape="@raw/star" />
</LinearLayout>
</RelativeLayout>
复制代码
就是简单的控件使用,掌握好属性就可以了。 效果比较好看,留个笔记。