Android控件动态显示和隐藏

先看效果:

这部分从底部慢慢显示出来
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只需两步即可实现此类效果:

  1. 在res中创建文件夹anim,里面放动画效果xml文件
    duration - 动画执行多长时间
    fromXDelta - X轴方向开始位置,可以是%(自身控件为100%),也可以是像素
    toXDelta - X轴方向结束位置,可以是%(自身控件为100%),也可以是像素
    fromYDelta - Y轴方向开始位置,可以是%(自身控件为100%),也可以是像素
    toYDelta - Y轴方向结束位置,可以是%(自身控件为100%),也可以是像素
    startOffset - 延迟多长时间后才开始动画
    还有两个属性:
    fillBefore 和 fillAfter 这里不进行介绍,只说亲测效果
    首先这两个属性放在 set 标签内 ; translate 内无效果
    fillBefore 默认属性,显示(由GONE到VISIBLE),隐藏后(由VISIBLE到GONE)消失
    fillAfter 显示(由GONE到VISIBLE),隐藏后(由VISIBLE到GONE)不消失,就在最后位置停留显示

隐藏 bottom_out.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <translate
        android:duration="300"
        android:fromYDelta="0"
        android:toYDelta="100%"/>

</set>

显示 bottom_in.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <translate
        android:duration="300"
        android:fromYDelta="100%"
        android:toYDelta="0" />

</set>
  1. 添加动画,预先控件就在你想要的位置,先隐藏掉 visibility=“gone”
    然后在显示出来,反之同理
Animation animBottomOut = AnimationUtils.loadAnimation(Activity.this,R.anim.bottom_out);
//animBottomOut.setDuration(240);//动态设置多长时间,xml里面设置了,这里就不要写了
view(你要添加效果的控件).setVisibility(VISIBLE);
view(你要添加效果的控件).startAnimation(animBottomOut);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值