在我当前的视图中,我有一个占据所有屏幕的ListView。当用户按下菜单按钮时,我希望列表视图向下滑动,在“相对”布局中显示隐藏在其下的视图。这是我正在使用的代码。
ListView lv = (ListView) findViewById(R.id.lvDashboard);
Animation anim2 = new TranslateAnimation(0, 0, 0, ListHeight);
anim1.setDuration(500);
anim2.setFillAfter(true);
lv.startAnimation(anim2);
它在下来的路上工作正常,但是当我想要点击按钮将其向上滑动时,列表视图会被截断(因为它之前已经滑落并占据了屏幕的一小部分)并且当它到达它的最终位置,它仍然是更小的尺寸,它在我的屏幕上留下了一个很大的空白区域。一旦我触摸屏幕上的任何地方,列表会重新调整尺寸并恢复到正常高度。 我需要做的是ListView在移动之前重新调整尺寸,因此当它向上滑动时,屏幕的任何部分都不会裸露。或者,ListView根本不会重新调整大小,只是简单地从屏幕滑出。
更新:我能够使用PropertyAnimation(而不是ViewAnimation)获得所需的效果,但我仍然很好奇是否有办法解决这个故障。