Android中通过ViewHelper.setTranslationY实现View移动控制(NineOldAndroids开源项目)
我们知道有不少开源project,能实现非常多不错的效果。前几天,我看了一个效果,刚好项目中也用到了这个jar包。
没事挖一挖 学一学(一说到挖一挖。那么问题来了。挖掘机技术究竟哪家强
),看看不错的效果怎么实现的呢?函数的详细意义有是什么呢?非常多效果,我们不须要又一次造轮子,仅仅须要装配轮子。开车走起就能够了。你没有那么多时间造轮子,我们能够选择自己喜欢的轮子,开我们的兰博基尼。开我们的保时捷概念车。开起来!
先看一下效果吧。挖自开源项目中的(NineOldAndroids开源项目)
不废话。我们解释下相关函数。
private View header_logo;
private float moveDistanceY = 25;// logo初始移动距离为10
private float moveDistanceX = 25;// logo初始移动距离为10 @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_moveDown :
moveDistanceY += 20;
ViewHelper.setTranslationY(header_logo, moveDistanceY);
break; case R.id.btn_moveUp :
moveDistanceY -= 20;
ViewHelper.setTranslationY(header_logo, moveDistanceY);
break; case R.id.btn_moveLeft :
moveDistanceX -= 20;
ViewHelper.setTranslationX(header_logo, moveDistanceX);
break; case R.id.btn_moveRight :
moveDistanceX += 20;
ViewHelper.setTranslationX(header_logo, moveDistanceX);
break; default :
break;
}
}
关于 ViewHelper.setTranslationY(view,float)函数的解释。这里的view 是您要移动哪个View 就是哪个东西你要将他在界面上进行活动呢? float是指你移动的距离 ,(假定參考坐标 最開始的位置中心位置为0)。那么ViewHelper.setTranslationY(view,100)就是把view向下(比最原始的位置)移动100。那么120那 130那 140 150呢
就是比最原始的位置多10、多20、多30、多40。。
。。所以ViewHelper.setTranslationX 还是ViewHelper.setTranslationY都能够实现了。
还是上源码吧。要不你们看不到效果是不是要骂我了。嘎嘎。
要用到ViewHelper。须要引用jar包。
开源project的jar包
本project源代码下载地址 :猛击这里,以后保证 每周必须更新一篇最新的技术文章。每天要努力 挖掘技术点(不是开挖掘机,开挖掘机还是去蓝翔开去)。
要不,你们以为我这么长时间都不出气。是不是挂了?还是被车撞了。趟医院起不来了。
。
。。。

Android中通过ViewHelper.setTranslationY实现View移动控制(NineOldAndroids开源项目)的更多相关文章
- Android进阶笔记08:Android 中Activity、Window和View之间的关系
1. Android 中Activity.Window和View之间的关系(比喻): Activity像一个工匠(控制单元),Window像窗户(承载模型),View像窗花(显示视图) LayoutI ...
- android开发中在界面上实现曲线图的几个开源项目
转自:https://wapiknow.baidu.com/question/1959128379041474620?qq-pf-to=pcqq.c2c 几个相关开源项目: 1. MPAndroid ...
- android两种基本联网方式与一种第三方开源项目的使用
安卓请求网络的三种方式 在请求网络的时候一般常用的提交方式是post或者get请求,post请求安全,传输大小无限制,但是代码量多些,get请求是浏览器有大小限制,用户提交的信息在浏览器的地址栏显示出 ...
- 快速开发android,离不开这10个优秀的开源项目
作为一名菜鸡Android,时常瞻仰大佬们的开源项目是非常必要的.这里我为大家收集整理了10个优秀的开源项目,方便我们日常开发中学习! 作者:ListenToCode博客:https://www.ji ...
- Android 中状态栏、标题栏、View的大小及区分
1.获得状态栏的高度(状态栏相对Window的位置): Rect frame = new Rect(); getWindow().getDecorView().getWindowVisibleDisp ...
- Android中View转换为Bitmap及getDrawingCache=null的解决方法
1.前言 Android中经常会遇到把View转换为Bitmap的情形,比如,对整个屏幕视图进行截屏并生成图片:Coverflow中需要把一页一 页的view转换为Bitmap.以便实现复杂的图形效果 ...
- Android中的Touch事件
Android中的Touch事件处理 主要内容 Activity或View类的onTouchEvent()回调函数会接收到touch事件. 一个完整的手势是从ACTION_DOWN开始,到ACTION ...
- Android中EditText显示明文与密文的两种方式
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 记录输入框显示.隐藏密码的简单布局以及实现方式. 效果图 代码分析 方式一 /**方式一:*/ private void sh ...
- android中使用jni对字符串加解密实现分析
android中使用jni对字符串加解密实现分析 近期项目有个需求.就是要对用户的敏感信息进行加密处理,比方用户的账户password,手机号等私密信息.在java中,就对字符串的加解密我们能够使用A ...
随机推荐
- cocos2d-x 3.0 经常使用对象的创建方式
cocos2d-x 3.0 中全部对象差点儿都能够用create函数来创建,其它的创建方式也是有create函数衍生. 以下来介绍下create函数创建一般对象的方法,省得开发中常常忘记啥的. 1.精 ...
- fgets()函数和sscanf()函数的使用方法
fgets 百度百科:从文件结构体指针stream中读取数据,每次读取一行.读取的数据保存在buf指向的字符数组中.每次最多读取bufsize-1个字符(第bufsize个字符赋'\0'),假设文件里 ...
- 四、基于HTTPS协议的12306抢票软件设计与实现--水平DNS并发查询分享
一.基于HTTPS协议的12306抢票软件设计与实现--实现效果 二.基于HTTPS协议的12306抢票软件设计与实现--相关接口以及数据格式 三.基于HTTPS协议的12306抢票软件设计与实现-- ...
- 0x15 KMP
这个算法本身就不难. poj1961 #include<cstdio> #include<iostream> #include<cstring> #include& ...
- iOS 权限判断 跳转对应设置界面
相机权限 1.1 使用说明 在合适的地方导入#import <AVFoundation/AVFoundation.h> 使用AVAuthorizationStatus类获取当前权限状态 在 ...
- java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getClassLoader")
转自:https://blog.csdn.net/bluecard2008/article/details/80921682?utm_source=blogxgwz0 摘要: 今天在使用jetty做容 ...
- 20.QT文本文件读写
#include "mainwindow.h" #include "ui_mainwindow.h" #include <QFile> #inclu ...
- ROS-Rviz-turtlebot3仿真信息查看
前言:Rviz是ROS自带的一种3D可视化工具. 一.安装turtlebot3功能包 1.1 安装依赖包 sudo apt-get install ros-kinetic-joy ros-kineti ...
- 基于Redis实现分布式应用限流--转
原文地址:https://my.oschina.net/giegie/blog/1525931 摘要: 限流的目的是通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限 ...
- 格式化日期字符串 FormatSettings使用
如果 你想要得到 YYYY-MM/DD 这样的字符串 你肯定说这太简单了 直接 ShowMessage(FormatDateTime('YYYY-MM/DD',now)); 运行结果 YYYY-MM ...