我想將我的標籤設置爲在UITableViewCell
中具有固定寬度,以便我的文本可以位於兩行以上但我總是會保留空間在單元格的右側顯示另一個視圖。試圖使UITableViewCell的標籤寬度有限但高度不受限制
到目前爲止,我試過這樣做,它不起作用。 UILabel
只是穿過整個惡夢的細胞。我希望它受到限制,使得文本在到達第二行之前可能達到通過單元格的方式的3/4。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *MyIdentifier = @"MyIdentifier";
UITableViewCell *cell =[tableView dequeueReusableCellWithIdentifier:MyIdentifier];
if (cell == nil){
cell = [[UITableViewCell alloc] initWithStyle:(UITableViewCellStyle)UITableViewCellStyleDefault reuseIdentifier:MyIdentifier];
[cell.textLabel setLineBreakMode:NSLineBreakByWordWrapping];
cell.textLabel.minimumScaleFactor = 0;
[cell.textLabel setNumberOfLines:0];
[cell.textLabel setFont:[UIFont boldSystemFontOfSize:FONT_SIZE]];
[cell.textLabel setBackgroundColor:[UIColor clearColor]];;
NSString * labelText = myString; // lets just pretend this works. I have somethign else here.
CGSize constraint = CGSizeMake((CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2) - 100.0f), 20000.0f); // Ultimate cell
CGSize size = [labelText sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:NSLineBreakByWordWrapping];
[cell.textLabel setText:labelText];
[cell.textLabel setFrame:CGRectMake(CELL_CONTENT_MARGIN, CELL_CONTENT_MARGIN, CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2) - 180.0f, MAX(size.height, 36.0f))]; // Lets me get the height of the text, supposedly.
}
// more stuff....
}
看起來你要根據你輸入的文本的高度的單元格的高度會這樣呢? –