我正在尝试使用滚动视图控制器,需要根据用户交互调整内容 - 具体来说,在用户使用UITextView时添加“完成”按钮,然后在它们被删除时删除它完成。问题是为有问题的按钮腾出空间。我喜欢做的是......
control.layer.position.x-=50;
对于我正在使用的那个“低于”的每个控件。不幸的是,这不起作用。据我所知,我将不得不做更像......的事情。
control.layer.position=CGPointMake(newX, newY);
这造成了可维护性的噩梦;而不是能够随意重新排列UIBuilder内的按钮,我将不得不改变他们在代码中的位置。不幸的是,无论我使用的第一类代码的变体是什么,结果都不起作用;我被告知我需要在赋值左侧使用左值,或者我正在尝试操作不兼容的类型。
答案 0 :(得分:1)
它会比 - =解决方案更冗长,但为什么不根据旧值计算newX
和newY
呢?
e.g。
CGPoint oldPosition = control.layer.position;
control.layer.position = CGPointMake(oldPosition.x - 50, oldPosition.y);
答案 1 :(得分:1)
button
附带center
属性,因此:
button.center = CGPointMake(button.center.x - 50, button.center.y);
应该做的伎俩