我遇到了问题,我试图在两个活动之间进行场景转换。
在活动A中,我有一个TextView。
在活动B中,我有一个CollapsingToolbarLayout。
当我点击活动A的按钮时,我想为活动B创建一个场景,其中textview转到CollapsingToolbarLayout标题。我在活动A中执行以下操作:
ActivityOptionsCompat options =
ActivityOptionsCompat.makeSceneTransitionAnimation(this,textView, "title");
ActivityCompat.startActivity((AppCompatActivity)context, intent, options.toBundle());
在ActivityB中: 布局:
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="@dimen/app_bar_height"
android:fitsSystemWindows="true"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/toolbar_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:id="@+id/imageView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/logo2"
android:fitsSystemWindows="true"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
.
.
.
和Activity(onCreate方法):
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_b);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle("title");
ViewCompat.setTransitionName(toolbar,"title");
但它不起作用,它没有正确地进行过渡。有什么想法吗?