问题:使用动画时可能会发生控件隐藏失效的问题
分析原因:分析原因很可能是因为动画在初始化的时候此时控件的隐藏与显示就已经确定了,相当于是将其view给固定了,仅仅可改变其中的属性值
解决方法一:
将该控件与动画解绑,同时重新给该控件定义Visibility属性值
relativeLayout.clearAnimation();
relativeLayout.invalidate();
relativeLayout.setVisibility(View.GONE);
当然,这种方式其实有时候不好使,暂时也没找到设么原因,若不好使可使用第二种方式
解决方法二:
在该控件外层重新包一层,我们通过设置外层控件的属性值来给该控件设置属性值
比如外层包一层mRelativeLayout,然后设置mRelativeLayout.setVisibility(View.GONE);即可实现效果
第二种方法相当来说比较差了,当然如果第一种方法不行然后实在找不到解决方法,为了业务完成,第二种方式也不是不可取