Android:无法使用 Google Maps Fragment 进行共享元素转换
Posted
技术标签:
【中文标题】Android:无法使用 Google Maps Fragment 进行共享元素转换【英文标题】:Android: Can't get shared element transition to work with Google Maps Fragment 【发布时间】:2015-11-08 02:06:19 【问题描述】:我正在尝试让 Google 地图片段在两个活动之间持续存在。我不知道如何做持久化部分,但我绝对希望地图出现在这两个活动中。为了使共享元素过渡,我给片段赋予了相同的过渡名称。我还启用了 Window Transitions 并像这样启动了 Activity B:
ActivityOptionsCompat options = ActivityOptionsCompat.
makeSceneTransitionAnimation(this, map, getString(R.string.map));
startActivity(i, options.toBundle());
但在我的一生中,我无法将这种过渡转变为工作。关于我可能做错的任何想法?
活动 A:
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:transitionName="@string/map"
android:layout_below="@id/toolbar_map_activity"
android:layout_
android:layout_
tools:context="com.example.gyang.android.MapActivity"
class="com.google.android.gms.maps.SupportMapFragment"/>
活动 B:
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:transitionName="@string/map"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_below="@id/spacer_between_logo_and_map"
android:layout_
android:layout_
tools:context="com.example.gyang.android.MapActivity"
class="com.google.android.gms.maps.SupportMapFragment"/>
【问题讨论】:
我也有同样的问题。你得到了有效的解决方案吗? 同样的问题!您是否找到了可行的解决方案? 【参考方案1】:好吧,可能已经晚了,或者可能有更好的解决方案,但这对我有用:
在 Activity A 中,我使用的是 ImageView,其中显示了我想在 Activity B 上显示的地图的一小部分。
在 Activity B 中,我将 <fragment>
放入了一个 LinearLayout 中,例如,我将要使用的 transitionName 放入其中。
过渡动画现在“放大”我的图像并将其变形为地图片段。
我希望这可以帮助那些仍在寻找解决方案的人。
【讨论】:
以上是关于Android:无法使用 Google Maps Fragment 进行共享元素转换的主要内容,如果未能解决你的问题,请参考以下文章
Android:无法使用 Google Maps Fragment 进行共享元素转换
com.google.android.gms.maps.MapFragment:无法解析符号“地图”
Android - Google Maps V2 无法使用 Fused Location
无法找到类com.google.android.gms.maps.SupportMapFragment
无法实例化 android.gms.maps.MapFragment
使用 Google Maps API android studio “除非您更新 Google Play 服务,否则应用程序将无法运行”