- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直被告知,如果我有一个带有动态文本内容的 UILabel,我应该使用 SizeToFit,因为这样可以正确调整 UILabel。我使用了 sizeToFit 但它弄乱了我滚动后 UITableViewCell 上的文本标签。但是,在初始屏幕加载时,它们看起来不错。
在搞砸了几个小时后,我在某处读到其他人也有同样的问题,他们使用了以下两行而不是 SizeToFit:
cell.message.lineBreakMode = UILineBreakModeWordWrap;
cell.message.autoresizingMask = UIViewAutoresizingFlexibleHeight;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"MessagesCustomViewCell";
MessagesCustomViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"MessagesCustomViewCell_iPhone" owner:self options:nil];
cell = [nib objectAtIndex:0]; //you can also loop thru or manually remember positions
}
NSArray * discussion = [self.messages objectAtIndex:indexPath.row];
cell.author.text = [discussion valueForKeyPath:@"author.name"];
cell.message.text = [discussion valueForKey:@"text"]; //DYNAMIC VARIABLE SIZED TEXT
cell.message.lineBreakMode = UILineBreakModeWordWrap;
cell.message.autoresizingMask = UIViewAutoresizingFlexibleHeight;
return cell;
}
最佳答案
尺寸适合
行为:关心它的内容超过superview的大小
发送sizeToFit
到没有 [yourLabel setNumberOfLines:0]
的 UILabel将使标签尽可能宽以适合其文本。而与 [yourLabel setNumberOfLines:0]
你的标签会根据它的宽度将它的文本分成多行,但这会使它的高度尽可能大以适应它的文本,它不关心它的 super View 的边界。
自动调整大小蒙版
行为:关心superview的大小而不是它的内容
如果设置了 UIlabel 的 autoResizingMask,一旦它的 super View 的边界发生变化,它会首先改变它的框架,然后它会检查“我可以在我的矩形中放置更多文本吗?”基于它的相对属性(numberOfLines,字体,...)。
关于ios - SizetoFit 与 UIViewAutoresizingFlexibleHeight。有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13225710/
我一直被告知,如果我有一个带有动态文本内容的 UILabel,我应该使用 SizeToFit,因为这样可以正确调整 UILabel。我使用了 sizeToFit 但它弄乱了我滚动后 UITableVi
我是一名优秀的程序员,十分优秀!