Android 学习之那些年我们遇到的BUG1:This view is not constrained, it only has designtime positions
This view is not constrained, it only has designtime positions, so it will jump to (0,0) unless you
刚开始学习安卓,入门书是郭霖大佬的《第一行代码》,这个问题是在尝试实现书中第二章P57页的体验活动生命周期这个案列时遇到的:
-
真机测试时发现两个Button重合,打开Design,如下图所示:
天真的认为把其中一个Button向下拉动就可以解决问题,发现其实并不可以,看 上去好像是移动了位置,实际测试时仍然是重合着的。 -
多方查找发现不同版本的Android Studio解决方法不同:
Android Studio 3.0之前的版本解决方法为:
打开预览界面,在预览界面中右键点击,选择 “Constraint Layout” —> “Infer Constraints” ,即可解决。如下图:
Android Studio 3.0之后的版本解决方法为:
打开预览界面,在预览界面中会发现找不到 “Constraint Layout” —> “Infer Constraints”这个选项 ,选项不是剔除了而是移动了位置,在上方的工具栏中有一个魔术棒样式的按钮就是这个“Constraint Layout” —> “Infer Constraints”,如下图所示:
点击一下下方的Button,再点击一下魔术棒,两个重合的按钮就分开了,这次是真的分开了,真机测试有效。