2016-07-21 24 views
1

versucht, LinarLayout von GONE-Zustand zu VISIBLE mit "Roll-down" -Animation zu zeigen. Auf diesem Layout existiert TextView. Scheint alles gut zu funktionieren, aber ein TextView wird nach der Animation nicht angezeigt. Was mache ich falsch?Nicht gezeigt TextView nach der Einstellung VISIBLE von GONE in der Animation

 <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> 

und Animationscode:

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

Versuchen Sie, TextColor Ihrer Textansicht zu ändern, wenn es helfen könnte. – Drv

+0

@Drv, nach Animation TextView nicht vorhanden und LinearLayout, auf dem diese TextView Lay hat kleinere Höhe. Ich denke, Grund nicht in Textfarbe ... – user2076491

+0

Sie müssen den richtigen Code für die Höhe Ihres linearen Layouts schreiben. – Drv

Antwort

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

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

entfernen diesem

  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> 

i t Dies ist das Problem Ihrer XML-Datei, Ihr relativer Layout in center_horizontal und alle Childs sind in der Mitte in parent.so Textansicht verbirgt sich über Bildansicht. Probieren Sie es aus und lassen Sie es mich wissen.

+0

Sorry, aber diese Textansicht wird nicht angezeigt. id.buyer_note nicht sichtbar. Aber wenn ich Visible GONE nicht aktiviere, haben alle Ansichten nach dem Start der Aktivität die richtigen Größen und Sichtbarkeitswerte. Aber ich brauche ll_info nur per Knopfklick zu zeigen. Und wenn ich in der Desing-Zeit Sichtbarkeit auf GONE ändere und VISIBLE auf Laufzeit sichtbar mache, ll_info layout zeigt aber ohne TextView id.buyer_info. – user2076491