更改UI元素/对象的XY位置

时间:2013-12-09 12:36:37

标签: objective-c coordinates uitoolbar

我想知道为什么你无法改变objective-c中某些物体的XY位置?例如......我有一个带有以下代码的工具栏,但只有当我将它放在一个UIView中然后设置相同的坐标时它才有效...任何人都可以解释为什么?

不起作用:

 UIToolbar *commentstoolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 400, 320, 44)];
 [self.view addSubview:commentstoolbar];

工作:

 UIToolbar *commentstoolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
 UIView *toolbarView = [[UIView alloc] initWithFrame:CGRectMake(0, 400, 320, 44)];

 [toolbarView addSubview:commentstoolbar];
 [self.view addSubview:toolbarView];

1 个答案:

答案 0 :(得分:1)

UIToolbar符合UIBarPositioning协议,该协议指定:

  

UIBarPositioning协议定义了条形的方式   定位在iOS设备上。 酒吧可以位于底部   它们的封闭视图,在其封闭视图的顶部,或两者   它们的封闭视图的顶部以及屏幕的顶部。

因此解决在任何地方放置工具栏的方法是将其包含在视图中,就像您一样。