我是靠谱客的博主 冷酷棉花糖,最近开发中收集的这篇文章主要介绍Android实用小特效,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、小图片点击放大

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实用小特效所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部