如何将标签及其动态文本设置为uiview的中心。
myView = [[UIView alloc] initWithFrame:CGRectMake(0,20,self.view.frame.size.width,32)];
[myView setBackgroundColor:[UIColor lightGrayColor]];
[self.view addSubView:myView];
UILabel *myLabel = [[UILabel alloc]initWithFrame:CGRectMake(myView.frame.size.width/2,10,0, 12)];
[myLabel setFont:[UIFont Helvetica12]];
[myLabel setText:[listDiction objectForKey @"dynaimicText"];
[myLabel sizeToFit];
myLabel.center = myView.center;
[myView addSubview:myLabel];
需要你的建议。
答案 0 :(得分:0)
用此订单替换您的行
[myView addSubview:myLabel];
[myLabel sizeToFit];
myLabel.center = myView.center;
但请等待,如果您的文字是动态的,那么,如果文字大小为>,您还要添加myLabel.numberOfLines = 0;
(对于多行)。 myView高度然后文本将在它增加myView高度时被剪裁。
为此,您需要计算标签文字大小并在创建myLabel之前调整myView的大小。
这个问题Calculating number of lines of dynamic UILabel (iOS7)可能会有所帮助。