我是靠谱客的博主 冷酷棉花糖,这篇文章主要介绍Android实用小特效,现在分享给大家,希望可以做个参考。

一、小图片点击放大

1.实现效果图

这里写图片描述

2.实现代码

复制代码
1
2
3
4
5
6
7
8
9
<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:contentDescription="@null" android:padding="2dp" android:onClick="test1" android:scaleType="centerInside" android:src="@drawable/ic_nav_add_selector" />

ic_nav_add_selector.xml

复制代码
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/ic_nav_add_normal" android:state_focused="false" android:state_pressed="false" /> <item android:drawable="@drawable/ic_nav_add_actived" android:state_pressed="true" /> </selector>

二、水波纹动画

Android5.0以上系统才有这样的动画,为了兼容5.0以下系统,所以这里定义了两个ic_material.xml文件

1.实现效果图
这里写图片描述

2.实现代码

复制代码
1
2
3
4
5
6
7
8
9
<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="15dp" android:gravity="center" android:textSize="16sp" android:onClick="test2" android:background="@drawable/ic_material" android:text="我是水波纹"/>

在drawable文件夹下新建ic_material.xml文件

复制代码
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/list_item_background_pressed" android:state_pressed="true" /> <item android:drawable="@color/white" /> </selector>

在drawable-v21文件夹下新建ic_material.xml文件

复制代码
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?> <ripple android:color="#cfcfcf" xmlns:android="http://schemas.android.com/apk/res/android"/>

三、旋转图片

录制的效果不好,没显示出来真正的动画效果
1.实现效果图

这里写图片描述

2.核心代码

复制代码
1
2
3
4
5
6
7
<ImageView android:id="@+id/iv_arrow_down" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10dp" android:src="@mipmap/ic_subscribe" android:contentDescription="@null"/>
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
private ImageView mViewArrowDown; private boolean isClose = true; private void test3() { if(isClose){ mViewArrowDown.setEnabled(false); mViewArrowDown.animate() .rotation(225) .setDuration(380) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animator) { super.onAnimationEnd(animator); mViewArrowDown.setRotation(45); mViewArrowDown.setEnabled(true); isClose = false; } }).start(); }else{ mViewArrowDown.setEnabled(false); mViewArrowDown.animate() .rotation(-180) .setDuration(380) .setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animator) { super.onAnimationEnd(animator); mViewArrowDown.setRotation(0); mViewArrowDown.setEnabled(true); isClose = true; } }); } }

最后

以上就是冷酷棉花糖最近收集整理的关于Android实用小特效的全部内容,更多相关Android实用小特效内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(67)

评论列表共有 0 条评论

立即
投稿
返回
顶部