我需要将TextView滚动到底部,直到通过预先形成像xml中的翻译动画这样的动画来消失。我尝试创建一个动画文件并在xml中使用了translate属性,但它会做的是它将按照我在xml中设置的特定距离向下移动。我不知道怎么让它翻到底部,直到它消失并从屏幕上消失。还有一件事是,我还想要一个类似侦听器的东西,当TextView消失时它将执行一些动作,并在动画结束时从屏幕上消失。
任何建议都将不胜感激。感谢。
答案 0 :(得分:4)
您可以计算出您希望观看视距的距离,但如果您不想要精确,则可以使用屏幕高度:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int screenHeight = size.y;
然后根据需要为视图添加动画,但添加一个侦听器以在最后执行您想要的操作:
textView.animate().translationY(screenHeight).setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
textView.setVisibility(View.GONE);
}
});
你仍然需要在听众的最后使视图可见性为GONE,以确保你不再看到它。
您也可以尝试使用getBottom()
作为距离。