【发布时间】:2010-10-16 01:01:35
【问题描述】:
我的子视图 (childView) 的宽度小于父视图。
[parentView addSubview:childView];
我想知道如何在父视图中添加这个子水平居中(垂直我希望它保持不变)。我想在代码中做到这一点。现在它正在添加,但添加到父级的左上角。有什么想法吗?
谢谢!
【问题讨论】:
标签: iphone objective-c cocoa-touch
我的子视图 (childView) 的宽度小于父视图。
[parentView addSubview:childView];
我想知道如何在父视图中添加这个子水平居中(垂直我希望它保持不变)。我想在代码中做到这一点。现在它正在添加,但添加到父级的左上角。有什么想法吗?
谢谢!
【问题讨论】:
标签: iphone objective-c cocoa-touch
MyView *v = [[MyView alloc] init];
CGFloat parentWidth = parentview.bounds.size.width;
CGRect frame = CGRectMake(floor((parentWidth - v.width)/2),
0,
v.width,
v.height);
v.frame = frame;
[parentview addSubview:v];
显然,您需要将 v.height 和 width 替换为实际宽度,并更改变量名称以匹配您自己的名称。这里的关键是父元素的宽度减去视图,除以 2
【讨论】: