在 ConstraintLayout 中对 Google 地图进行动画处理会使应用程序冻结

问题描述 投票:0回答:1

最近,我开始在我的应用程序中实现 CostraintLayout,并且我有一个基于地图的应用程序需要地图动画。因此,我使用强大的 ConstraintSet 对其进行动画处理,但是当我尝试删除旧约束并将新约束连接到地图时,应用程序冻结并给出 ANR。

我的代码:

ConstraintSet set = new ConstraintSet();
set.clone(parent);

set.clear(R.id.detailView, ConstraintSet.TOP);
set.clear(R.id.map, ConstraintSet.BOTTOM);

set.connect(R.id.detailView, ConstraintSet.BOTTOM, R.id.parent, ConstraintSet.BOTTOM, 0);
set.connect(R.id.map, ConstraintSet.BOTTOM, R.id.detailView, ConstraintSet.TOP, 0);

AutoTransition trans = new AutoTransition();
trans.setDuration(500);
trans.setInterpolator(new LinearInterpolator());

TransitionManager.beginDelayedTransition(parent, trans);
set.applyTo(parent);

注意:在Android 4.4.4上测试

android google-maps android-constraintlayout
1个回答
1
投票

这是谷歌地图版本 16.4.1 中修复的错误

© www.soinside.com 2019 - 2024. All rights reserved.