Android TranslateAnimation覆盖其他布局视图

Android TranslateAnimation覆盖其他布局视图,android,android-relativelayout,translate-animation,Android,Android Relativelayout,Translate Animation,我有一个相对线(垂直)定义为包括3个视图。顶视图和底视图高16像素,显示文本。中间视图显示游戏应用程序的图形 在游戏过程中的不同时刻,应用程序运行TranslateImation,有效地向上或向下“滚动”中间视图。这使得游戏角色在游戏中保持“中心”的中间视图。 我的问题是,当动画运行时,平移会导致覆盖顶视图或底视图。这仅在动画的持续时间内持续。动画完成后,一切正常,顶/底视图按预期显示文本。令我惊讶的是,翻译动画显示的内容超出了它运行的(中间)视图。我的愿望是,当平移向上/向下滑动显示时,动画只

我有一个相对线(垂直)定义为包括3个视图。顶视图和底视图高16像素,显示文本。中间视图显示游戏应用程序的图形

在游戏过程中的不同时刻,应用程序运行TranslateImation,有效地向上或向下“滚动”中间视图。这使得游戏角色在游戏中保持“中心”的中间视图。

我的问题是,当动画运行时,平移会导致覆盖顶视图或底视图。这仅在动画的持续时间内持续。动画完成后,一切正常,顶/底视图按预期显示文本。令我惊讶的是,翻译动画显示的内容超出了它运行的(中间)视图。我的愿望是,当平移向上/向下滑动显示时,动画只影响中间视图,而不会模糊顶视图或底视图中的内容

下面是我用来创建布局的代码。自定义视图直接从视图派生,并在其onDraw(Canvas)方法中显示内容

middleView中启动动画的代码如下所示:

TranslateAnimation ta = new TranslateAnimation(0, 0, 0, yDistance);
ta.setDuration(500);
startAnimation(ta);
我已经尝试了很多方法来让这个动画按预期的方式运行,但是一直无法做到。希望有人能帮忙。提前谢谢

TranslateAnimation ta = new TranslateAnimation(0, 0, 0, yDistance);
ta.setDuration(500);
startAnimation(ta);