У меня есть один Linearlayout. Вот мой код xml
<LinearLayout
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="-4dp">
<android.support.v4.widget.NestedScrollView
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true">
<LinearLayout
android:id="@+id/paper_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:background="#ffffff"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="26dp"
android:src="@mipmap/ic_app_icon" />
<TextView
android:id="@+id/company_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:singleLine="true"
android:text="Company Name"
android:textColor="@android:color/black"
android:textSize="30dp" />
<TextView
android:id="@+id/company_address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:singleLine="true"
android:text="Company Address"
android:textColor="@android:color/black"
android:textSize="14dp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_marginRight="6dp"
android:layout_marginTop="10dp"
android:focusableInTouchMode="false"
android:listSelector="#00000000"
android:overScrollMode="never"
android:scrollbars="none" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="15dp"
android:layout_marginTop="10dp"
android:src="@mipmap/test_img" />
<View
android:layout_width="match_parent"
android:layout_height="16dp" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</LinearLayout>
Я ставлю перед собой цель создать анимацию снизу вверх. Я написал некоторый код, но анимация работает неправильно.Вот мой код Java.В методе onCreate действия
slide = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f,
Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF,
0.0f, Animation.RELATIVE_TO_SELF, -5.0f);
slide.setDuration(4000);
slide.setFillAfter(true);
slide.setFillEnabled(true);
я пытаюсь запустить анимацию, подобную этой
if (slide != null) {
linearLayout.startAnimation(slide);
slide.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
linearLayout.clearAnimation();
startActivity(MainActivity.class);
}
});
}
Моя цель - начать другое действие, как только анимация закончится
public void startActivity(Class<?> cls) {
Intent intent = new Intent(this, cls);
startActivity(intent);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
}
Но через 4 секунды, когда анимация закончилась, новое действие не работает сразу. Есть ли способ ускорить вызов нового действия?