2010-10-16 71 views
2

我的子视图(childView)的宽度比父视图小。Cocoa Touch:如何在父视图中添加水平居中的子视图?

[parentView addSubview:childView]; 

我想知道我如何能够加入这个孩子水平居中(垂直我希望它保持不变)在父视图。我想在代码中这样做。现在它正在添加到父项的左上角。有任何想法吗?

谢谢!

回答

3
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和宽度,改变变量的名字来匹配自己。这里的关键是地板的父母的宽度减去视图,除以2

+0

作品像一个魅力,谢谢你!但是 - v.width,v.height应该是v.frame.size.width,v.frame.size.height。 – foreyez 2010-10-16 01:53:48

相关问题