更改帧时活动闪烁/闪烁
问题描述:
我有一个viewpager,它工作得很好,但是当我将它添加到侦听器时 OnPageSelected() mViewBottomBar.setVisibility(View.GONE);它闪烁,mViewBottomBar是一个视图,它形成了它在viewpager之外的actvitiy布局,这两个在相对布局内。更改帧时活动闪烁/闪烁
答
它会闪烁,因为View.GONE会将底部栏的宽度和高度设置为0.此后需要更新UI,这就是为什么您会看到闪烁的屏幕。为了解决这个问题,使用动画来隐藏底部条,并在动画结束时调用View.GONE,这将允许平滑过渡而不闪烁。
实施例:
TranslateAnimation animation = new TranslateAnimation(
TranslateAnimation.ABSOLUTE, 0,
TranslateAnimation.ABSOLUTE, 0,
TranslateAnimation.ABSOLUTE, 0,
TranslateAnimation.ABSOLUTE, 100);
animation.setDuration(200);
animation.setFillAfter(true);
animation.setAnimationListener(new Animation.AnimationListener()
{
@Override
public void onAnimationStart(Animation animation)
{
}
@Override
public void onAnimationEnd(Animation animation)
{
mViewBottomBar.setVisibility(View.GONE);
}
@Override
public void onAnimationRepeat(Animation animation)
{
}
});
mViewBottomBar.startAnimation(animation);
但它发生即使当产品是不可见的,我有以下的条件,如果(mViewBottomBar.getVisibility()== View.VISIBLE){ mViewBottomBar.setVisibility(View.GONE ); } – 2015-02-05 20:03:32
什么项目?请更清楚一点。使用动画查看更新后的答案。看看它是否有效。 – domi 2015-02-05 20:10:57
谢谢,这确实解决了我的问题。 – 2015-02-05 20:19:09