`
cuixuxucui
  • 浏览: 351873 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

android vew(2) 滑动

 
阅读更多

view滑动

一、scrollTo/scrollBy

只能将view的内容移动,并不能移动view本身。((View)getParent()).scrollBy(offsetX,offsetY)

mScrollX和mScrollY类似,mScrollX表示view左边缘和view内容左边缘的距离,也就是说当mScrollX=100时,内容看上去是往左侧移了,就像Flash中的遮罩效果一样。

二、动画方式

ObjectAnimator.ofFloat(targetView,"translationX",0,100).setDuration(100).start();

Android3.0以上使用属性动画很好,考虑向下兼容,就会出现view动画只移动影像的问题。

三、改变布局参数

MarginLayoutParams params = (MarginLayoutParams)mButton1.getLayoutParams();

params.width += 100;

params.leftMargin += 100;

mButton1.requestLayout();

//或者mButton1.setLayoutParams(params);

四、Scroller

scrollTo/scrollBy是瞬间完成的。Scroller则可以实现弹性滑动。

Scroller scroller = new Scroller(mContext);

private void smoothScrollTo(int destX,int destY){

   int scrollX = getScrollX();

   int delta = destX - scrollX;

   mScroller.startScroll(scrollX,0,delta,0,1000);//1秒内缓慢滑动

   invalidate();

}

 

public void computeScroll(){

   if(mScroller.computeScrollOffset()){

      scrollTo(mScroller.getCurrX(),mScroller.getCurry());

 postInvalidate();

   }

}

invalidate会导致view重绘,在重绘的draw方法中,会调用computeScroll方法。在mScroller.computeScrollOffset()中,会根据时间流逝计算出当前的插值,然后调用scrollTo方法更新。然后调用postInvalidate会再次重绘,反复循环,直到mScroller.computeScrollOffset()判断滑动结束。

注意由于使用的仍然是scrollTo方式,移动的还是view的内容

分享到:
评论

相关推荐

    Android 手势检测实战 打造支持缩放平移的图片预览效果【VewPager版】

    `ViewPager`允许用户左右滑动切换页面,非常适合图片预览场景。同时,我们还需要处理平移(panning)手势,这可以通过重写`onTouchEvent`方法并使用`MotionEvent`的` ACTION_MOVE`来实现。通过计算手指间的位移,...

    Android代码-洗衣机效果的Vew

    WashingMachineView An interactive view with water waves flowing in a Washing machine Demo apk Demo apk is available in releases. Credits Water waves code is based on jonn990's awesome WaveView ...

    spechtrum VEW

    2. **实时分析**:软件支持实时显示音频的频谱变化,这对于监测动态音频事件非常有用。 3. **参数调整**:用户可以调整窗函数类型、分辨率、频率范围等参数,以适应不同的分析需求。 4. **频域分析**:通过频谱图,...

    android获得当前view在屏幕中坐标的方法

    在Android开发中,有时我们需要获取View在屏幕中的确切位置,例如在实现自定义滚动效果或者进行界面交互时。本文将详细介绍如何在Android中获取当前View的屏幕坐标,并提供实际应用场景和示例代码。 首先,Android...

    android核心组件(1)常用布局,adapter,handler,UI

    表格布局:tablelayout,列表布局:listview(listAdapter),表格布局:gridview(listadapter),imageadapter,绝对布局:absoluteLayout,标签布局:tablayout:1>android.content.res2>android.graphics3>android.vew4>android...

    8810平台安卓手机平台

    酷比安卓手机8810平台。酷比T550刷机用这平台软件可以完美ROOT

    listview中显示不同的视图布局

    2. **自定义Adapter**: 创建一个继承自BaseAdapter的自定义Adapter,如MyAdapter。在Adapter中,我们需要重写以下方法: - `getCount()`: 返回ListView的条目数量。 - `getItem(int position)`: 获取指定位置的...

    inforview doc 6 develop

    2. **报表设计**:InforView 提供了多种报表类型,如表格、图表、仪表盘等。开发者需要掌握如何利用其内置的报表构建工具创建复杂的数据模型,以及如何运用各种数据转换和计算方法来满足用户对数据展示的需求。 3. ...

    vit.rar_vit.rar

    - `vew2.asp` 和 `vew.asp` 文件可能负责显示论坛帖子和主题,提供用户浏览和交互的界面,可能包含分页、排序、搜索等功能。 - `vew.asp` 文件可能是一个通用的帖子查看页面,而 `vew2.asp` 可能有特定的视图或...

    基于ASP的bbs论坛

    1. **vew2.asp**:这可能是一个查看帖子或主题的页面,用户可以在此阅读他人发布的讨论内容。通常,此类页面会显示帖子的详细信息,包括发帖者、发布时间、内容以及可能的回复。 2. **changepass.asp**:此文件用于...

    第六章 访问权限控制

    NULL 博文链接:https://listen-raining.iteye.com/blog/1887712

    Advanced Lotus Password Recovery

    This program (Advanced Lotus Password Recovery, or simply ALPR) can be used to recover lost or forgotten passwords for files/documents created in the following ... Lotus Approach (*.APR, *.APT, *.VEW)

    计算机基础课件:西文字符的编码.ppt

    计算机基础课件:西文字符的编码 字符集是计算机中用于存储和处理各种字符的集合。西文字符集是由拉丁字母、数字、标点符号及一些特殊符号组成。每个字符在字符集中都有一个唯一的代码,即该字符的编码。...

    java 达内在线考试系统

    此软件主要有3个主控界面,和2个流程界面。分别是登陆,查看个人信息和考试界面,系统启动等待界面和考试规则界面。 在这个项目开发的vew设计中用到了简单工厂的开发模式,使用swing开发,在service方面则是普通的...

    明基Joybook S31V系列网卡驱动程序 官方版

    明基Joybook S31V系列网卡驱动程序,官方...支持明基Joybook S31V/S31VE/S31VW/S31VEW系列。笔记本介绍明基Joybook S31V笔记本采用Intel Core 2 Duo T5500处理器。Intel 945GM主板芯片组,512M DDR2内存,欢迎下载体验

    ASP综合性网站设计(LW+源代码+开题报告+任务书+答辩PPT).zip

    8. `VEW2.ASP` - 论坛帖子查看页面,用户可以查看和阅读其他用户的帖子。 9. `changepass.asp` - 密码修改功能,用户可以更改自己的账户密码。 10. `DELWORD.ASP` - 删除帖子的接口,可能是管理员或拥有权限的用户...

    以太网焊机与安川机器人.pdf

    - 确认系统已增加VEW01的数字I/F基板,如果没有,检查DX100系统版本和弧焊基板是否已删除。 通过以上设置,FRONIUS焊机和DX100机器人能够实现以太网通信,从而实现自动化焊接作业。在实际操作中,务必遵循安全规程...

    NotePad++ 显示16进制 插件

    2、将HexEditor.dll放到NotePad++安装目录下的【plugins】目录下; 3、退出Notepad++,然后重新打开; 4、点击【插件-->Hex-Editor--->Vew in Hex】,即可实现16进制显示。 下载路径: http://download.csdn.net/my

    二年九月全国计算机等级考试一级MSOffice真题.pdf

    4. 创建新文件夹:在VEW文件夹下新建DCD文件夹。 5. 设置文件属性:将LOLID文件夹中的FOOL.PAS设置为隐藏属性。 【汉字录入题】 这部分测试考生的汉字输入速度和准确率,需要在指定时间内输入指定的汉字文本。 ...

Global site tag (gtag.js) - Google Analytics