私のアプリでは、1つのアクティビティのリストビュー名と次のアクティビティのツールバータイトルの間で共有要素の移行を実装しようとしています。私が直面している問題は、共有要素がアニメーション化されていないことです。その代わりに、レイアウト全体の入力と終了の遷移とともにアニメーション化されるべきです。Android - 共有要素リストビューからツールバータイトルへの遷移
ここでは保険のテキストがアニメーション全体とは別にアニメーション化する必要があります。次のように
呼び出しアクティビティアニメーションは、次のとおり
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setSharedElementReturnTransition(TransitionInflater.from(this)
.inflateTransition(R.transition.trans_move));
// getWindow().setSharedElementExitTransition(new TransitionSet()
// .addTransition(new Fade()));
Slide slideTransition = new Slide();
slideTransition.setSlideEdge(Gravity.LEFT);
slideTransition.setDuration(getResources().getInteger(R.integer.anim_duration_long));
getWindow().setReenterTransition(slideTransition);
getWindow().setExitTransition(slideTransition);
}
setShareElementExitTransition遷移に影響を及ぼさないように第二活性
ActivityOptionsCompat activityOptions
= ActivityOptionsCompat.makeSceneTransitionAnimation(
HomeActivity.this,
new Pair<>(view.findViewById(R.id.nameTextView),
SharedCertificatesActivity.ab_title)
);
Intent _intent=new Intent(mContext, SharedCertificatesActivity.class);
ActivityCompat.startActivity(HomeActivity.this,
_intent, activityOptions.toBundle());
に第活動を開始するために使用
意図それをコメントアウト次のシーンの遷移があります
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
// Re-enter transition is executed when returning to this activity
Slide slideTransition = new Slide();
slideTransition.setSlideEdge(Gravity.LEFT);
slideTransition.setDuration(getResources().getInteger(R.integer.anim_duration_medium));
Slide slideRightTransition = new Slide();
slideRightTransition.setSlideEdge(Gravity.RIGHT);
slideRightTransition.setDuration(getResources().getInteger(R.integer.anim_duration_medium));
// getWindow().setAllowReturnTransitionOverlap(true);
getWindow().setReenterTransition(slideRightTransition);
getWindow().setExitTransition(slideTransition);
// getWindow().setSharedElementEnterTransition(TransitionInflater.from(this)
// .inflateTransition(R.transition.trans_move));
ViewCompat.setTransitionName(title, ab_title);
}
また、私は同様の問題hereを見つけましたが、そこに記載されている解決策は私のためには機能しませんでした。 その上記の問題は、第2のアクティビティのレイアウトは以下の通りである場合:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
android:background="@color/primary"
app:popupTheme="@style/AppTheme.PopupOverlay">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|start"
android:fontFamily="sans-serif-medium"
android:text="Binder Name"
android:textColor="@color/_kAppearanceUINavigationBarTextColor"
android:textSize="20sp" />
</android.support.v7.widget.Toolbar>
<include layout="@layout/binder" />
</LinearLayout>
.
.
.
</android.support.design.widget.CoordinatorLayout>
すべてのヘルプは非常
このチュートリアルでは、単一トランジション要素についても説明しました。まだ同じ問題に直面しています https://halfthought.wordpress.com/2014/12/08/what-are-these-dang-transitions/ –
達成しようとしていることと現在達成できないことを正確に説明してください(ビデオ/ gifの方が望ましい)。 –
回答を編集しました。 @XaverKapellerの要件に関するアニメーションとその下のコメントを追加しました –