TranslateImation将视图移出屏幕-Android

TranslateImation将视图移出屏幕-Android,android,Android,我在GridView上使用以下动画 当活动加载slideToBottom(myGridView)时,我隐藏它 我遇到的问题是,当单击botton以显示视图时,它只是使其可见而没有动画,当我再次单击它时,它加载动画,将其滑动到顶部的代码在下面 public void slideToTop(View view){ TranslateAnimation animate = new TranslateAnimation(0,0,view.getHeight(),0); animate.s

我在GridView上使用以下动画

当活动加载slideToBottom(myGridView)时,我隐藏它

我遇到的问题是,当单击botton以显示视图时,它只是使其可见而没有动画,当我再次单击它时,它加载动画,将其滑动到顶部的代码在下面

public void slideToTop(View view){
    TranslateAnimation animate = new TranslateAnimation(0,0,view.getHeight(),0);
    animate.setDuration(1000);
    animate.setFillAfter(true);
    view.startAnimation(animate);
    view.setVisibility(View.VISIBLE);

}


<RelativeLayout

    android:id="@+id/container"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:clipChildren="false"
    android:clipToPadding="false"
    >
    ....some other stuff here

    <GridView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/myGridView"
        android:horizontalSpacing="2dip"
        android:numColumns="3"
        android:scrollbars="vertical"
        android:verticalSpacing="0dip"
        android:paddingTop="8dp"
         />


</RelativeLayout>
public void滑盖(视图){
TranslateAnimation animate=新的TranslateAnimation(0,0,view.getHeight(),0);
设置持续时间(1000);
设置.setFillAfter动画(true);
视图。开始动画(动画);
view.setVisibility(view.VISIBLE);
}
……这里还有其他东西

我做错了什么?

不确定这是否与问题有关,但在您的代码中:

view.startAnimation(animate);
view.setVisibility(View.GONE);
startAnimation()
仅启动动画。在将“可见性”设置为“消失”之前,应等待其完成

参见上的示例

类似地,要在视图中滑动,应在开始动画之前使其可见

view.startAnimation(animate);
view.setVisibility(View.GONE);