android view退出动画,android animation——view进来退出动画

在设计android项目的时候我们有时候需要对activity的进入退出做一些动画处理,虽然android自身已经做了动画处理,但是我们需要更加炫酷的动画就需要自己去写一些动画了。

有时候不光activity,还有popupwindow或者自定义view都是需要动画的。

那么,我就来说说简单而简洁的view进入退出动画。

首先,我们在项目中新建一个存放动画的文件夹(res/anim)

从xml开始:

android:fromXDelta="0" android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:toXDelta="100%" />

这是一个从左边退出的动画,我们取名为anim_left_out.xml

其中:

duration:动画执行时间

fromXDelta:x的起始值,0

toXDelta:x的结束值,100%

interpolator:线性插值器,根据时间百分比设置属性百分比,这里设置加速减速插值器

那么一个完整的view进出动画还包括出现的动画:

android:fromXDelta="0" android:interpolator="@android:anim/accelerate_decelerate_interpolator"

android:toXDelta="100%" />

可以看出,也就是把左退出动画的x坐标轴的数值倒转一下而已。

那么我们应该怎么设置动画,让一个view同时具有着两个动画呢?

拿popupwindow来说,设置动画:

popupwindow.setAnimationStyle(R.anim.anim_left_out);

但是,问题来了。这样只能设置一个动画啊,怎么办呢?

那就用style来解决吧:

在style(res/values/style)中:

@anim/anim_left_in

@anim/anim_left_out

接下来再popupwindow中写:

popupwindow.setAnimationStyle(R.style.PopupWindowAnimLeft);

这样,popupwindow就具有了从左边出现,然后退出到左边的动画。

是不是很方便?

那么至于activity就更简单了,

overridePendingTransition(R.anim.activity_start_anim, R.anim.activity_exit_anim);

需要注意的是:

1,在startactivity()和finish()之后调用;

2,该方法必须在2.0版本以上才有用,那么我们可以这么设置:

int version = Integer.valueOf(android.os.Build.VERSION.SDK);

if(version >= 5) {

overridePendingTransition(R.anim.activity_start_anim,R.anim.activity_exit_anim);

}

至于自定义view我们可以创建一个动画实例然后在view初始化完成以后播放。

view的进出动画效果其实用xml文件去写就完全可以胜任。更多更炫酷的动画效果就要靠自己去慢慢实验了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

bc8android汽车中控屛功能有哪些,丰田酷路泽中控台的8大功能 你们知道都是干什么用的?...

兰德酷路泽(参数|图片)中控台的8大功能 ①:高低速四驱调节高低速四驱调节系统,有着两个方向,L4和H4H4,指的是高速四驱,开启H4的时候适合走沙石路面,泥泞路面,雪地,沙石地等。最高车速…

关于java二维数组长度(length)的知识

关于java二维数组长度(length)的知识 二维数组的长度 //定义一个整型数组:3行4列 int a[][] new int[3][4]; //也可以 int[][] anew int[3][4]; //获取行数---3行 int lenY a.length; //获取列数---4列 int lenX a[0].length;其实很好理解,因为二维数组可以理解…

android 动态广告图片,android – 如何在动态壁纸的设置屏幕中添加一个admob广告视图?...

这是一个更简单的解决方案:创建一个显示单个广告的新首选项类型.然后,您可以在首选项的xml定义中包含该首选项类型,以显示一个或多个广告.自定义偏好类:public class AdmobPreference extends Preference{public AdmobPreference(Context context) {supe…

微服务和分布式的区别

微服务和分布式的区别 1.分布式 将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互。区别分布式的方式是根据不同机器不同业务。 上面:service A、B、C、D 分别是业务组件&#xff…

android关机背景,鍵盤消失后的Android白色背景

Video of the problem from a different user but its the same來自不同用戶的問題的視頻但是相同http://imgur.com/ca2cNZvI have a background image set as follows :我有一個背景圖像設置如下:.pane {background-image: url("../img/inner-banner-bg.jpg&q…

javax.servlet.ServletException: Circular view path []: would dispatch back to the current....

解决:javax.servlet.ServletException: Circular view path []: would dispatch back to the current… 原因: 当没有声明ViewResolver时,spring会注册一个默认的ViewResolver,就是JstlView的实例, 该对象继承自Inter…

android跌倒检测,Android跌倒检测

我正在使用加速度传感器实现跌倒检测,并创建以下代码.public void onSensorChanged(SensorEvent foEvent) {if (foEvent.sensor.getType() Sensor.TYPE_ACCELEROMETER) {double loX foEvent.values[0];double loY foEvent.values[1];double loZ foEvent.values[2];double l…

SpringBoot与SpringCloud的关系与区别

一、SpringBoot和SpringCloud简介 1、SpringBoot:是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们快速整合第三方常用框架,完全采用注解化(使用注解方式启动SpringMVC),简化XML配置&am…

android studio break,Android Studio IDE: Break on Exception

可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):问题:It seems my Android Studio does not want to break on any exception by default. Enabling break on "Any Exception" starts breaking within act…

SpringBoot怎么直接访问templates下的html页面

SpringBoot直接访问templates下的html问题 方法1:曾经: template下文件不允许直接访问 1、springboot项目默认是不允许直接访问template下的文件的,是受保护的。 所以想访问template下的html页面,我们可以配置视图解析器。 2、如…

php查到的内容追加到html,javascript - 请问php中如何将查询出来的结果数组转化成自己想要的格式,并在前台利用js输出到html中...

考试类型的表jx_exam_type,可后台添加内容考试成绩的表jx_result,可后台添加内容期中考试成绩表中的exam_id对应考试类型表中的id,也就是添加的成绩是属于期中还是期末然后使用php查询$sql"SELECT re.type, re.score, re.exam_id, et.ti…

DevOps(过程、方法与系统的统称)是什么

DevOps (过程、方法与系统的统称) DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部…

android 蓝牙sco stream_voice_call,android TTS输出总是要 A2DP_android_开发99编程知识库

大多数设备上我都有这样的工作。 下面是在语音呼叫流中使用蓝牙SCO代替A2DP启动TTS的部分。if (mTtsReady) {myHash new HashMap();myHash.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID,"A2DP_Vol");OLD_AUDIO_MODE am2.getMode();if(SMSstream 1){if (am2.is…

Springboot 页面访问不到静态资源Failed to load resource: the server responded with a status of 404 ()

Springboot 页面访问不到静态资源 问题&#xff1a;在HTML文件中引入图片&#xff0c;但是浏览器访问不到图片。 index.html&#xff1a; <!DOCTYPE html> <html xmlns:th"http://www.thymeleaf.org"><head><meta charset"UTF-8"&…

dw中HTML修改背景图片,dreamweaver将一个图片设定背景,用代码怎么写?

在你要改背景的文件夹中(包括硬盘分区也是一样)建立记事本&#xff0c;储存为desktop.ini 格式的&#xff0c;打开记事本编辑,输入一下源码:[ExtShellFolderViews]{BE098140-A513-11D0-A3A4-00C04FD706EC}{BE098140-A513-11D0-A3A4-00C04FD706EC}[{BE098140-A513-11D0-A3A4-00C…

spring.mvc.static-path-pattern、spring.resources.static-locations

“spring.mvc.static-path-pattern”用于阐述HTTP请求地址&#xff0c;请求非controller地址&#xff0c;如js,css,img等访问路径需要加上static, 可以不配置也能访问图片 而“spring.resources.static-locations”则用于描述静态资源的存放位置。多个路径&#xff08;逗号隔开…

JS在html中加法器,JavaScript_JavaScript程序设计之JS调试,本文主要通过一个加法器,介 - phpStudy...

JavaScript程序设计之JS调试本文主要通过一个加法器&#xff0c;介绍JS如何调试。先上代码&#xff1a;效果&#xff1a;test.html&#xff1a;计算器计算器计算demo.js/*** Created by yanzi on 15/12/8.*/var num1 document.getElementById("num1"),num2 documen…

springboot页面中静态图片路径

目录结构&#xff1a; 不写th:src"{/images/a.jpeg}"是访问不到的

html字居右垂直设置,css文字水平垂直居中怎么设置?

css文字水平垂直居中怎么设置&#xff1f;下面本篇文章就来给大家介绍使用CSS设置文字水平居中和垂直居中的方法。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对大家有所帮助。1、文字水平居中在CSS中想要让文字水平居中&#xff0c;可以使用text-a…

java实现把数据写入到Excel并下载

引入依赖&#xff1a; <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.0</version></dependency>RequestM…