Android MapFragment调整动画大小时有起伏/滞后
我目前正在调整GoogleMapFragment视图的大小(从全屏高度调整为半屏)。我使用了ValueAnimator来实现这一点,但是设备上的动画似乎滞后(Nexus 6p)。我使用的是所有默认插值器。我做错了什么Android MapFragment调整动画大小时有起伏/滞后,android,google-maps,android-layout,xamarin,xamarin.android,Android,Google Maps,Android Layout,Xamarin,Xamarin.android,我目前正在调整GoogleMapFragment视图的大小(从全屏高度调整为半屏)。我使用了ValueAnimator来实现这一点,但是设备上的动画似乎滞后(Nexus 6p)。我使用的是所有默认插值器。我做错了什么 var animY = ValueAnimator.OfFloat(startY, endY); animY.SetDuration(1000); animY.AddUpdateListener(new AnimatorUpdatedListener((a) => {
var animY = ValueAnimator.OfFloat(startY, endY);
animY.SetDuration(1000);
animY.AddUpdateListener(new AnimatorUpdatedListener((a) =>
{
var layout = MapFragment.View.LayoutParameters;
layout.Height = (int)a.AnimatedValue;
MapFragment.View.LayoutParameters = layout;
MapFragment.View.RequestLayout();
}));
animY.Start();
嘿,只需将地图视图或地图片段的初始大小设置为您希望其扩展到的大小,然后将其放置在较小的支架布局中(您希望的地图初始大小),当您想要设置动画时,只需设置支架视图的动画。延迟是由于重新绘制地图的时间消耗造成的。我遇到了完全相同的问题。我认为发生这种情况是因为您不应该更改
SupportMapFragment
的大小,而应该覆盖其中的一部分并相应地移动相机。如果您找到了任何解决方案,请添加答案。