2016-07-21 6 views
1

のGONEからVISIBLEを設定した後のTextViewは、LinarLayoutをGONE状態からVISIBLEに「ロールダウン」アニメーションで表示しようとしました。このレイアウトにはTextViewがあります。すべて正常に動作しているようですが、アニメーションの後にTextViewが表示されません。 私は間違っていますか?表示されませんアニメーション

 <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:visibility="gone" 
      android:id="@+id/ll_info"> 
      <TextView 
       android:id="@+id/bayer_note" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="20dp" 
       android:layout_marginRight="20dp" 
       android:layout_marginTop="10dp" 
       android:layout_marginBottom="10dp" 
       android:text="@string/buyer_note"/> 
      <RelativeLayout 
       android:id="@+id/button_continue" 
       android:layout_width="match_parent" 
       android:layout_height="54dp" 
       android:layout_centerHorizontal="true" 
       android:layout_marginLeft="@dimen/activity_horizontal_margin" 
       android:layout_marginRight="@dimen/activity_horizontal_margin" 
       android:background="@drawable/button_register" 
       android:drawableEnd="@drawable/ic_arrow_forward_white_24dp"> 

       <TextView 
        android:id="@+id/btn_cont_caption" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center_vertical" 
        android:text="Войти" 
        android:textColor="@android:color/white" 
        android:textSize="20sp" 
        android:fontFamily="fonts/SF-UI-Display-Regular.ttf" 
        android:layout_centerInParent="true" /> 

       <ImageView 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:id="@+id/imageView" 
        android:layout_centerVertical="true" 
        android:layout_alignParentEnd="false" 
        android:src="@drawable/ic_door" 
        android:layout_toRightOf="@+id/btn_cont_caption" 
        android:layout_marginLeft="10dp" 
        android:scaleType="fitCenter" /> 
      </RelativeLayout> 
     </LinearLayout> 

とアニメーションコード:

final LinearLayout ll_info = (LinearLayout)findViewById(R.id.ll_info); 

     class scaleAnimation extends Animation { 
        public LinearLayout ll; 
        public int newHeight; 

        public void scaleTopHeight(int height) 
        { 
         newHeight = height; 
        } 

        public void setLayout(LinearLayout layout) { 
         ll = layout; 
        } 
       } 

       final LinearLayout ll_info = (LinearLayout)findViewById(R.id.ll_info); 

       scaleAnimation h = new scaleAnimation() { 
        @Override 
        protected void applyTransformation(float interpolatedTime, Transformation t) { 
         ll.getLayoutParams().height = interpolatedTime == 1 
           ? LinearLayout.LayoutParams.WRAP_CONTENT 
           : (int)(newHeight * interpolatedTime); 
         ll.requestLayout(); 
        } 
       }; 
       h.setDuration(300); 
       h.setLayout(ll_info); 
     ll_info.setVisibility(View.VISIBLE); 
       ll_info.measure(View.MeasureSpec.makeMeasureSpec(((LinearLayout)ll_info.getParent()).getWidth(), View.MeasureSpec.AT_MOST), View.MeasureSpec.makeMeasureSpec(((LinearLayout)ll_info.getParent()).getHeight(), View.MeasureSpec.AT_MOST)); 
       h.scaleTopHeight(ll_info.getMeasuredHeight()); 
     ll_info.getLayoutParams().height=1; 
       ll_info.startAnimation(h); 
+0

テキストビューのtextColorを変更してみてください。 – Drv

+0

@Drv、Animation TextViewが存在しない場合、このTextViewレイの高さがより小さいLinearLayout。私はテキストの色ではない理由を考えています... – user2076491

+0

あなたのlinearlayoutの高さを設定するための適切なコードを記述する必要があります。 – Drv

答えて

0
<RelativeLayout 
      android:id="@+id/button_continue" 
      android:layout_width="match_parent" 
      android:layout_height="54dp" 

      **android:layout_centerHorizontal="true"** ///// 

私はトンこの

  android:layout_marginLeft="@dimen/activity_horizontal_margin" 
      android:layout_marginRight="@dimen/activity_horizontal_margin" 
      android:background="@drawable/button_register" 
      android:drawableEnd="@drawable/ic_arrow_forward_white_24dp"> 

      <TextView 
       android:id="@+id/btn_cont_caption" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:text="Войти" 
       android:textColor="@android:color/white" 
       android:textSize="20sp" 
       android:fontFamily="fonts/SF-UI-Display-Regular.ttf" 
       android:layout_centerInParent="true" /> 

      <ImageView 
       android:layout_width="25dp" 
       android:layout_height="25dp" 
       android:id="@+id/imageView" 
       android:layout_centerVertical="true" 
       android:layout_alignParentEnd="false" 
       android:src="@drawable/ic_door" 
       android:layout_toRightOf="@+id/btn_cont_caption" 
       android:layout_marginLeft="10dp" 
       android:scaleType="fitCenter" /> 
     </RelativeLayout> 

を削除これはあなたのXMLファイルの問題です、あなたのrelativelayoutはcenter_horizo​​ntalにあり、すべての子はparent.soの中心にありますtextviewはイメージビューを隠します。試してみてください。

+0

申し訳ありませんが、このテキストは表示されていません。 id.buyer_noteは表示されません。しかし、私が視覚的にGONEを設定しなければ、アクティビティの開始後にすべてのビューが正しいサイズと可視性を持っています。しかし、私はボタンクリックだけでll_infoを表示する必要があります。そして、私がDesing timeで変更した場合、可視性がGONEに変わり、実行時にll_infoレイアウトが表示されますが、TextView id.buyer_infoは表示されません。 – user2076491

関連する問題