美文网首页
view学习笔记(四)

view学习笔记(四)

作者: 将来是只猴 | 来源:发表于2018-02-08 22:11 被阅读0次

    我们上一节学习了view的滑动,通过view的scrollTo()和scrollBy()方法。那么,还有没有其它的方法可以使view滑动呢?答案当然是肯定的。本节我们将通过动画的方式来使view滑动。
    使用动画来移动view,主要是操作view的translationX和translationY属性,这两个属性我们应该都非常熟悉,在view的第一篇笔记关于view的坐标时我们就已经解释过她们了。translationX、translationY是view左上角相对于父容器的偏移量。
    ObjectAnimator.ofFloat(btn,"translationX",0,100).setDuration(1000).start();
    如上面的代码就可以使btn这个按钮向右平移100像素。
    值得注意的是:view动画(还有帧动画以及属性动画,属性动画就是上面代码的方式)

    xml格式

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:shareInterpolator="true"
    android:duration="200"
    android:fillAfter="true"
    android:zAdjustment="normal"
    >
    <translate
    android:fromXScale="float"
    android:toXScale="float"
    android:fromYScale="float"
    android:toYScale="float"/>
    </set>

    代码格式

    Animation animation = AnimationUtils.loadAnimation(this, R.anim.animation);
    view.startAnimation(animation);

    在使view移动的过程中只是对view的映像进行操作,并不会真正的移动view的位置。也不会对view的属性值进行改变。当我们移动view到指定位置时移动的影像会消失,如果我们想要使影像停留在最后的位置,我们需要设置 android:fillAfter="true"这个属性。所以如果我们对view进行了点击等事件,那么,我们对影像进行点击是不会起作用的,因为我们并没有真正的改变view 的位置。

    对于view的移动,其实还有一种方法,就是通过改变布局参数的方式。
    改变布局就是通过改变view的相邻的view的布局属性或是改变父布局的布局属性等,相对的来移动view 的位置。因为这种方式不常用而且比较简单,所以我们就不做介绍了。

    那么,关于view 的移动,我们已经讲解了三种方法了:
    通过view 的scrollTo,scrollBy方法
    通过动画的方式
    通过改变布局参数的方式

    相关文章

      网友评论

          本文标题:view学习笔记(四)

          本文链接:https://www.haomeiwen.com/subject/knlxtftx.html