2 summericeredtea summerICEREDTEA 于 2013.01.11 21:14 提问

UILabel如何在父view中垂直居中?
//这里的xywidth height要怎么写?

UILable *label = [[UILabel alloc] initWIthFrame:CGRectMake(x,y,width,height)] ;
[view.addSubView label];

还有对于不确定text长度的label如何设置width 啊

2个回答

langyufei
langyufei   2013.01.12 07:21
已采纳

基于super view设置你这个label的frame.
比如你要让这个label再父view的正中间,直接设置center属性.
至于动态的高度,你可以通过计算string的size获得.

NSString *yourMsg = @"your message here";
CGSize labelSize = [yourMsg sizeWithFont:[UIFont systemFontOfSize:15.0] constrainedToSize:CGSizeMake(30, MAXFLOAT) lineBreakMode:NSLineBreakByCharWrapping];// 这里限制宽30, 不限制高度
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, labelSize.width, labelSize.height)];
label.text = yourMsg;
label.center = self.view.center;
starandcwj
starandcwj   2013.01.13 01:00
UILable *label = [[UILabel alloc] initWIthFrame:CGRectMake(x,y,width,height)] ;

[view.addSubView label];
[label sizeToFit]
label.center = CGPointMake(view.bounds.size.width/2,...height/2)
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!