Objective c ios8[view setFrame:rect]不工作
我无法以编程方式在ios8中重新定位uiview。以下代码在ios7.1中似乎运行良好,但在ios8中不起作用 此代码位于视图的layoutSubview函数中Objective c ios8[view setFrame:rect]不工作,objective-c,ios8,xcode6,ios7.1,Objective C,Ios8,Xcode6,Ios7.1,我无法以编程方式在ios8中重新定位uiview。以下代码在ios7.1中似乎运行良好,但在ios8中不起作用 此代码位于视图的layoutSubview函数中 for (UIView *child in self.subviews) { if((self.removeOnHide == YES && child.hidden == NO) || self.removeOnHide == NO) { top += self.sp
for (UIView *child in self.subviews)
{
if((self.removeOnHide == YES && child.hidden == NO) || self.removeOnHide == NO) {
top += self.spacing;
switch (self.hAlignment)
{
case UIControlContentHorizontalAlignmentLeft:
left = self.leftMargin;
break;
case UIControlContentHorizontalAlignmentRight:
left = self.frame.size.width - self.rightMargin
- child.frame.size.width;
break;
default: // center
left = baseline - child.frame.size.width / 2;
break;
}
CGRect rect = child.frame;
child.frame = CGRectMake(left, top, child.frame.size.width,
child.frame.size.height);
rect = child.frame;
top += child.frame.size.height;
}
}
我正在使用这个git repos的代码。使用的代码在ios7.1中工作正常,但在ios8.0中不工作Log self.vLayoutView,输出是什么?这是什么观点?这个代码什么时候调用?这是代码的确切位置。修复了它只需从autolayout中删除视图,然后就可以工作。因此,问题是我从interface builder中设置了auto layout中包含的视图,然后试图从代码中更改其属性。现在,由于它已经在自动布局中,更改没有得到反映。只需从@SiddhantJain的注释继续,您就可以拥有自动布局,并能够通过代码设置UIView的框架,方法是在要更新的UIView上设置translatesAutoResizezingMaskintoConstraints=YES。