1

税関セルで構成されるテーブルビューがあります。各セルには、合計3つのラベルがあります。

主要な問題は、セルの3つのラベルの中央のラベルの形成です。

私は同じCGRectでカスタムラベルを作成しています

UILabel *msglabeltemp = [[[UILabel alloc]  initWithFrame:  CGRectMake(80,20.0,230.0,80.0)] autorelease];
[cell.contentView addSubview:msglabeltemp];
msglabeltemp.backgroundColor = [UIColor clearColor];
msglabeltemp.textColor = [UIColor grayColor];
msglabeltemp.numberOfLines=6;
[msglabeltemp setFont:[UIFont fontWithName:@"Helvetica Neue" size:12.0f]];
msglabeltemp.tag=1;
msglabeltemp.font=[UIFont systemFontOfSize:12.0f];
msglabeltemp.textAlignment=UITextAlignmentLeft ;
//Adding Label To Cell
UILabel *msglabel = (UILabel *)[cell.contentView viewWithTag:1];

msglabel.text = [data1 objectForKey:@"msg"];

...このラベルは、セル内のラベルごとに呼び出されますが、最初のラベルと中央のラベルの間の予期しない距離を示しています。

画像の赤で強調表示された領域を参照してください

ここに画像の説明を入力してください

4

3 に答える 3

1

これも重宝します

CGSize maximumSize = CGSizeMake(300, 9999);
    NSString *dateString = @"The date today is January 1st, 1999";
    UIFont *dateFont = [UIFont fontWithName:@"Helvetica" size:14];
    CGSize dateStringSize = [dateString sizeWithFont:dateFont 
            constrainedToSize:maximumSize 
            lineBreakMode:self.dateLabel.lineBreakMode];

    CGRect dateFrame = CGRectMake(10, 10, 300, dateStringSize.height);

    self.dateLabel.frame = dateFrame;
于 2012-05-04T07:51:47.260 に答える
0

AUILabelのコンテンツは上揃えではなく (代わりに中央に配置されています)、これが表示されている理由です。

これを変更する方法については、「UILabel 内でテキストを上に垂直に揃える」を参照してください。

于 2012-05-03T16:48:27.973 に答える
0
CGRect lblFrame = CGRectMake(20, 20, 280, 150);
    UILabel *lbl = [[UILabel alloc] initWithFrame:lblFrame];
    [lbl setBackgroundColor:[UIColor orangeColor]];

    NSString *labelText = @"I am the very model of a modern Major-General, I've information vegetable, animal, and mineral";
    [lbl setText:labelText];

    // Tell the label to use an unlimited number of lines
    [lbl setNumberOfLines:0];
    [lbl sizeToFit];
于 2012-05-04T06:14:18.023 に答える