如何在ios中使用Constants使视图位置动态?
我正在开发一个应用程序,其中显示了一个图像视图。图像上有一些红点是ui按钮。当用户点击按钮时,图像应该缩放。为此,我添加了一个带有如下约束的滚动视图 内部滚动视图我有imageview 现在,当我的屏幕大小改变时,图像大小也会改变。我添加了一个UIButton作为红点。我给出了它的水平和垂直线的约束 现在,当设备尺寸改变时,图像上的按钮位置也会改变。 我想要的是,即使图像大小增大,所有设备上的按钮位置也应相同。请告诉我如何做到这一点如何在ios中使用Constants使视图位置动态?,ios,objective-c,uibutton,autolayout,Ios,Objective C,Uibutton,Autolayout,我正在开发一个应用程序,其中显示了一个图像视图。图像上有一些红点是ui按钮。当用户点击按钮时,图像应该缩放。为此,我添加了一个带有如下约束的滚动视图 内部滚动视图我有imageview 现在,当我的屏幕大小改变时,图像大小也会改变。我添加了一个UIButton作为红点。我给出了它的水平和垂直线的约束 现在,当设备尺寸改变时,图像上的按钮位置也会改变。 我想要的是,即使图像大小增大,所有设备上的按钮位置也应相同。请告诉我如何做到这一点 在UIImage视图顶部添加按钮 然后通过从按钮拖动到
- 在UIImage视图顶部添加按钮
- 然后通过从按钮拖动到图像来添加约束
- 首先对UIImageView和top的前导空间设置两个约束 UIImageView中的空间为常数或标准,具体取决于ur 需要李>
- 你的代码应该是这样的。。 button.top=image.top button.leading=image.leading
- 添加这两个约束将完成您的工作
- 如果你想确定按钮的大小,你需要添加hight和 宽度限制。 我会附上一张它看起来像什么的图片
按钮.top
)设置为12图像高度*12/100
在给定示例中,常数=200(新图像高度)*(12/100)(比率)
=24
因此按钮的新距离.top=24
与视图一样,可以将约束拖放到viewController.m文件中:
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *myLayoutConstraint;
您可以在其中以编程方式操作:
[UIView animateWithDuration:1.0 animations:^{
self.myLayoutConstraint.constant = 10;
} completion:^(BOOL finished) {
//handle completion
}];
我想保持按钮固定的位置。我的意思是,如果图像中的红点在云上,那么它应该在每个设备上的云上,它不应该移动哦,所以你的图像在滚动视图中正确吗??所以你只需要在uiimage上拖放按钮。然后将鼠标指针从按钮拖动到uiimage。我有选择权。我将编辑我的答案。是的。但问题是,如果图像大小增加,则图像上红点按钮的位置会发生变化。例如,如果一台设备上的红点图像位于云端,则在另一台设备上的该位置相同。然后,我们必须通过编程设置约束。看看你的图像比例是多少。根据比率u可以为约束设置常量值。。。。为此,请获取参考图像分辨率,并检查按钮位置值是多少。。。。根据你的图像大小增减的多少,根据Lyokay调整按钮。我知道这是一个解决方案,我认为我可以通过使用其他方法使这个过程更容易。然后我必须通过编程为每个设备设置不同的约束。