如何更改按钮的位置。目标-c

Posted

技术标签:

【中文标题】如何更改按钮的位置。目标-c【英文标题】:How to change position of buttons. objective-c 【发布时间】:2013-08-15 08:23:30 【问题描述】:

*** 上定位按钮的方法不起作用。我正在使用

self.todayButton.frame = CGRectMake(0, self.todayButton.frame.origin.y, self.todayButton.frame.size.width, self.todayButton.frame.size.height);

我认为这是一个自动布局问题,但我不确定如何解决。

【问题讨论】:

【参考方案1】:

这是Autolayout 的问题。但是您不能在笔尖的特定视图上禁用autolayout。必须在整个笔尖上禁用它。 更好的解决方案是在该按钮上使用setTranslatesAutoresizingMaskIntoConstraints

 [self.todayButton setTranslatesAutoresizingMaskIntoConstraints:YES];

【讨论】:

嗨,当我这样做时,它会像这样给出日志:无法同时满足约束。可能以下列表中的至少一个约束是您不想要的。试试这个:(1)查看每个约束并尝试找出您不期望的; (2) 找到添加了一个或多个不需要的约束的代码并修复它。 (注意:如果您看到不理解的 NSAutoresizingMaskLayoutConstraints,请参阅 UIView 属性 translatesAutoresizingMaskIntoConstraints 的文档 将尝试通过打破约束来恢复 <0x8b2a230 v:>【参考方案2】:

可能值得拆分这段代码,这样您就可以看到新框架的样子:

CGRect newFrame = self.todayButton.frame;
NSLog(@"Old: %@", NSStringFromCGRect(newFrame));
newFrame.origin.x = 0;
NSLog(@"New: %@", NSStringFromCGRect(newFrame));
self.todayButton.frame = newFrame;

显示的框架是否与您预期的一样?

【讨论】:

旧版:569, 13, 73, 44 新版:0, 13, 73, 44 按钮保持原位。 好吧,至少你已经排除了这一点!我希望 Puneet 的上述回答有助于解决问题。祝你好运。

以上是关于如何更改按钮的位置。目标-c的主要内容,如果未能解决你的问题,请参考以下文章

Endnote更改Sync文件夹位置

如何使用 android studio 更改 Google 地图中“我的位置”按钮的位置

如何使用 swift 在谷歌地图中更改我的位置按钮的位置

如何使用按钮更改 UI Slider 的物理位置

如何在谷歌地图上快速更改我的位置按钮的位置

如何更改 iOS 上后退按钮的位置?