2013-09-24 62 views
2

我有一個LinearLayout &我有2個TextViews在裏面。動態地我想隱藏一個TextView,或者我可以在運行時添加TextViews。我的問題是當TextView從LinearLayout中消失時,它立刻崩潰了。我想在從LinearLayout中移除視圖時爲LinearLayout(ScaleAnimation)創建動畫。Animate(ScaleAnimation)LinearLayout由於添加/刪除視圖而導致高度發生變化

activity_main.xml中佈局的

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:paddingBottom="@dimen/activity_vertical_margin" 
     android:paddingLeft="@dimen/activity_horizontal_margin" 
     android:paddingRight="@dimen/activity_horizontal_margin" 
     android:paddingTop="@dimen/activity_vertical_margin" 
     tools:context=".MainActivity" > 

    <LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_margin="10dp" 
    android:background="#000" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="1dp" 
     android:background="#fff" 
     android:orientation="vertical" 
     android:padding="10dp" > 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="10dp" 
      android:text="Hello, World" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="10dp" 
      android:text="Hello, World 2" /> 
    </LinearLayout> 
    </LinearLayout> 

    <Button 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:text="Remove TextView" /> 

</RelativeLayout> 

快照... enter image description here

我想動畫的LinearLayout當第二TextView中接到的LinearLayout &刪除,如果其他的TextView得到了加入LinearLayout中。 ScaleAnimation適用於上述任務,但我不知道這種類型的動畫所需的值。

+0

老兄,我想你可以從[刷卡解除](https://github.com/romannurik/android-swipetodismiss)得到很多 – lucian

+0

這是一個不同的想法....我需要動畫LinearLayout視圖時裏面消失.. –

回答

0

相當肯定,你不需要它了,但對於未來的搜索:

對於刪除的動畫,可以使不可見的項目使用view.setVisibility(View.INVISIBLE)和之後的動畫(addAnimationListener)有效地從刪除線性佈局。當一個視圖不可見時,它的父母會繼續測量它。

相關問題