概述
一、小图片点击放大
1.实现效果图
2.实现代码
<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
<?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.实现代码
<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文件
<?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文件
<?xml version="1.0" encoding="utf-8"?>
<ripple
android:color="#cfcfcf"
xmlns:android="http://schemas.android.com/apk/res/android"/>
三、旋转图片
录制的效果不好,没显示出来真正的动画效果
1.实现效果图
2.核心代码
<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"/>
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实用小特效所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复