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);
Versuchen Sie, TextColor Ihrer Textansicht zu ändern, wenn es helfen könnte. – Drv
@Drv, nach Animation TextView nicht vorhanden und LinearLayout, auf dem diese TextView Lay hat kleinere Höhe. Ich denke, Grund nicht in Textfarbe ... – user2076491
Sie müssen den richtigen Code für die Höhe Ihres linearen Layouts schreiben. – Drv