Android应用TranslateAnimation移动之后,利用视图的setLayoutPara
而我们采用Animation.AnimationListener,在onAnimationEnd的方法中改变当前视图利用LayoutParams的setMargins方法重新定位位置。
代码段,仅供参考。
- public void move() {
- jqkjScroll.setEnabled(true);
- Animation mTranslateAnimation = new TranslateAnimation(, , ,
- -showheight);// 移动
- mTranslateAnimation.setDuration(minute);
- // mAnimationSet.setFillAfter(true);
- // mTranslateAnimation.setFillAfter(true);
- mTranslateAnimation
- .setAnimationListener(new Animation.AnimationListener() {
- public void onAnimationStart(Animation animation) {
- if (isNoMenu == false) {
- curent.setVisibility(View.GONE);
- }
- }
- public void onAnimationEnd(Animation animation) {
- RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
- contentLayout.getLayoutParams());
- contentImg.setImageResource(R.drawable.open);
- params.setMargins(, endY - startY, , );
- contentLayout.clearAnimation();
- contentLayout.setLayoutParams(params);
- jqkjScroll.scrollTo(, );
- isMoveORShowing = false;
- }
- public void onAnimationRepeat(Animation animation) {
- }
- });
- contentLayout.startAnimation(mTranslateAnimation);
- }
- public void show() {
- jqkjScroll.setEnabled(false);
- Animation mTranslateAnimation = new TranslateAnimation(, , ,
- showheight);// 移动
- mTranslateAnimation.setDuration(minute);
- mTranslateAnimation
- .setAnimationListener(new Animation.AnimationListener() {
- public void onAnimationStart(Animation animation) {
- if (isNoMenu == false) {
- curent.setVisibility(View.VISIBLE);
- }
- }
- public void onAnimationEnd(Animation animation) {
- contentImg.setImageResource(R.drawable.close);
- isMoveORShowing = false;
- contentLayout.clearAnimation();
- RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
- contentLayout.getLayoutParams());
- params.setMargins(, showheight + endY - startY, , );
- contentLayout.setLayoutParams(params);
- }
- public void onAnimationRepeat(Animation animation) {
- }
- });
- contentLayout.startAnimation(mTranslateAnimation);
- }
Android应用TranslateAnimation移动之后,利用视图的setLayoutPara的更多相关文章
- [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法
一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...
- Android应用开发学习之表格视图
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 本文我们来学习一个使用表格视图的程序,下图是该程序的运行效果: 该程序主Activity文件内容如下: packag ...
- Android View体系(一)视图坐标系
前言 Android View体系是界面编程的核心,他的重要性不亚于Android四大组件,在这个系列中我会陆续讲到View坐标系.View的滑动.View的事件分发等文章来逐步介绍Android V ...
- Android分组子级的不同视图布局之BUG奇遇记
Android分组子级的不同视图布局之BUG奇遇记 最近在使用按日期分类列表,二级条目可能不一样,于是就想到了ExpandableListView. ExpandableListView的布局显示分割 ...
- oracle 创建视图、修改视图、删除视图、利用视图操作基本表
转:http://blog.sina.com.cn/s/blog_6b58d2fa0100rgvw.html 1.使用create or replace view命令创建视图 语法格式: create ...
- Android使用Mono c#分段列表视图
下载source code - 21.7 KB 你想知道如何把多个ListView控件放到一个布局中,但是让它们在显示时表现正确吗 多个列表项?你对它们正确滚动有问题吗?这个例子将向你展示如何组合单独 ...
- Android学习笔记(九) 视图的应用布局效果
最近少了写博客,可能最近忙吧,工作上忙,因为工作原因也忙于学习,也没记录什么了,也没有按照之前的计划去学习了.现在就记录一下最近学到的. 要做Android应用,界面设计少不了,可惜之前一直在用Win ...
- 【Android】9.3 自定义列表视图的外观
分类:C#.Android.VS2015: 创建日期:2016-02-18 一.简介 自定义的列表视图通常用Resources/Layout文件夹下的axml文件中的资源来声明,适配器则通过Id去加载 ...
- android AppWidget的使用以及利用TimerTask实现widget的定时更新
第一步:首先是Widget的定义声明: 在资源文件下的xml目录中建立文件example_appwidget_info.xml: <?xml version="1.0" en ...
随机推荐
- flutter 极光推送
一.配置极光开发者 1.注册极光开发者 https://www.jiguang.cn/push 2.创建应用 二.创建APP 1.添加依赖 pubspec.yaml 添加: flutter_jpus ...
- CvScalar
CvScalar定义可存放1—4个数值的数值,其结构如下. typedef struct CvScalar{ double val[4];}CvScalar; ----------------- ...
- HDU 2562 奇偶位互换(字符串,水)
奇偶位互换 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- Linux命令之quota
quota [-guqvswim] [-l | [-Q | -A] ] [-F quotaformat] quota [-qvswim] [-l | [-Q | -A]] [-F quotaforma ...
- 复制对象 copy 与mutable copy
转载 : http://blog.csdn.net/u010962810/article/details/18887841 通过copy方法可以创建可变对象或不可变对象的不可变副本,对于不可 ...
- bit & byte & B & KB & Kbps & KBps & ps
存储单位bit & byte & B & KB & Kbps & KBps & ps (bit,位:byte,字节:区别) Bit,位 :二进制数 ...
- intellij idea 为JavaEE项目建立Servlet
建立Servlet的方法 顶部菜单栏 View > Tool Windows > Web. 然后互相web窗口 右键Web>new>Servlet 弹出窗口
- Spring学习——DI(依赖注入)
IOC容器,处理对象依赖关系 IOC与DI: IOC :是一个容器,创建对象的容器 DI :在容器创建对象后,处理对象的依赖关系,也叫依赖注入! 方式1:通过set方法注入值 可以给普通属性.集合属性 ...
- golang垃圾回收
常见GC算法 我总结了一下常见的 GC 算法.分别是:引用计数法.Mark-Sweep法.三色标记法.分代收集法. 1. 引用计数法 原理是在每个对象内部维护一个整数值,叫做这个对象的引用计数,当对象 ...
- java基础之:java注解
一:元注解 元注解的作用就是负责注解其他注解.Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明.Java5.0定义的元注解: 1. ...