0

スクロール ビューにラベルを追加してから、スクロール ビューの contentSize をラベルの目的のサイズに合わせようとしています。問題は、 contentSize をラベルのサイズよりも大きくする必要があるようです:

theScrollview = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0,320,480)];
bodyLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320.0, 50.0)];
bodyLabel.textColor = [UIColor whiteColor];
bodyLabel.backgroundColor = [UIColor clearColor];
bodyLabel.textAlignment = UITextAlignmentLeft;
bodyLabel.text = event.description; <- basically some long ass text here
bodyLabel.font=[UIFont systemFontOfSize:16.0];

bodyLabel.numberOfLines = 0;
bodyLabel.lineBreakMode = UILineBreakModeWordWrap;

ここで、テキストを含めるために必要なラベルサイズを取得していると思います

CGSize size = [event.description sizeWithFont:bodyLabel.font constrainedToSize:CGSizeMake(bodyLabel.frame.size.width, 9500) lineBreakMode:bodyLabel.lineBreakMode];

frame = bodyLabel.frame; // to get the width
frame.size.height = size.height;    
bodyLabel.frame = frame;

ここでは、contentSize をラベルのサイズに設定しましたが、十分な大きさではありません。スクロールでカバーするには、bodyLabel.frame.size.height + 80 に設定する必要があります。

theScrollview.contentSize = CGSizeMake(bodyLabel.frame.size.width, bodyLabel.frame.size.height);
[theScrollview addSubview:bodyLabel];

事前にご意見をお寄せいただきありがとうございます。

4

1 に答える 1

1
[theScrollview addSubView: bodyLabel];
于 2012-08-18T21:05:17.707 に答える