0

我想将我的应用程序向下移动 20.0f 并在其上方放置一个标签。我的应用程序支持水平和垂直方向。我不知道如何为我的标签设置框架。我知道有一种动态的方法可以做到这一点,但我无法弄清楚。我很感激这里的一点帮助。正如你在图片中看到的,我想把标签放在粉色区域。

4

3 回答 3

0

如果您rootViewController正确构建应用程序窗口,则该视图控制器有一个 UIView,它的view,它占据了整个屏幕(状态栏除外)。它的原点位于左上角,就在状态栏下方。因此,您希望您的标签{0,0}作为根视图控制器视图的子视图。不要试图将它放在根视图控制器之外,例如直接放在 UIWindow 中;这是错误的,你只会让自己感到困惑。

于 2013-03-16T01:03:21.407 回答
0

添加标签时,您希望其宽度与您要添加的视图边界的宽度相同。

然后,如果您不使用 autoLayout,要处理旋转,您需要将其自动调整大小掩码设置为UIViewAutoresizingFlexibleWidth.

于 2013-03-16T01:06:59.173 回答
0
MyAppDelegate *delegate=(MyAppDelegat*)[[UIApplication sharedApplication] delegate];
CGRect frame=delegate.window.rootviewController.view.frame;
frame.origin.y+=20.0f;
delegate.window.rootviewController.view.frame=frame;

UILabel *label=[[UILabel alloc]initWithRect:CGRectMake(0,0,width,height)];
[delegate.window addSubView:label];

将自动调整大小的掩码添加到具有灵活宽度标志的标签中。以便在旋转时调整大小

于 2013-03-16T01:15:14.453 回答