UIView setFrame问题

Nic*_* AD 6 uiviewcontroller uiview ipad

我必须做错事,但不知道是什么......

我尝试使用以下代码添加一个subView:

subMenuView = [[UISubMenuViewMainController alloc] init];

[subMenuView.view setFrame:CGRectMake(10,0,990,100)];

subMenuView.view.backgroundColor  = [UIColor whiteColor];

[self.view addSubview:subMenuView.view];
Run Code Online (Sandbox Code Playgroud)

我希望我的视图位于(10,0)并且宽度/高度为990/100

但我没有得到预期的结果

如果我错了,请告诉我,如果我想要一个10x10的正方形视图,我必须添加以下行:

[subMenuView.view setFrame:CGRectMake(512,384,10,10)];
Run Code Online (Sandbox Code Playgroud)

这不是我得到的,位置是正确的,但宽度/高度是错误的,任何想法?

小智 11

如果您使用autolayout,则调用setFrame没有用,请尝试在setFrame之前调用setTranslatesAutoresizingMaskIntoConstraints

  • 设为是或否?提供示例更好 (4认同)
  • 设置为YES对我有用. (4认同)
  • 你应该提到应该设置的内容. (2认同)

Nic*_* AD 7

通过设置修复问题

self.view.autoresizesSubviews = NO;
Run Code Online (Sandbox Code Playgroud)