2011-11-11 12 views
0

UIlabelに以下のコードを使用していますが、長すぎるかどうかわかりません。スクロールすると、ユーラベルはこの結果を得ます。どうすれば問題を解決できますか? uilabelを使用すると制限がありますか?UIlabelのスクロールビューの改行が長すぎると正しく表示されない(iphone retina simulator)

Picture

CGSize maximumLabelSize = CGSizeMake(100,9999); 
CGSize expectedLabelSize = [summaryBlogParsed sizeWithFont: contentSummaryLabel.font 
             constrainedToSize:maximumLabelSize 
              lineBreakMode: contentSummaryLabel.lineBreakMode]; 

//adjust the label the the new height. 
CGRect newFrame = contentSummaryLabel.frame; 
newFrame.size.height = expectedLabelSize.height; 
contentSummaryLabel.frame = newFrame; 
contentSummaryLabel.numberOfLines = 0; 
contentSummaryLabel.text = summaryBlogParsed; 

[contentSummaryLabel sizeToFit]; 
contentScrollView.contentSize = CGSizeMake([UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.width*2 + CGRectGetMaxY(contentSummaryLabel.frame)); 

編集:私は、iPhoneのRetinaシミュレータを使用する場合 、この問題が発生します。

答えて

1

お互いの上にラベルが重ねて表示されているようです。 backgroundColour[UIColor clearColor]に設定し、opaqueプロパティをNOに設定してみてください。実際にそうであることを確認してください。そうであれば、フレーム設定コードを確認する必要があります。

すべてが1つのラベルであれば、多くの行で1つのラベルを必要としないかもしれませんが、setNeedsDisplayを呼び出して強制的に再描画することができます。

+0

私の問題はiPhone Retinaシミュレータでのみ発生します(実際のデバイスではまだ試していません)。私は非網膜のiphoneシミュレータを使用する場合、その罰金。私はまた、クリアカラーと不透明をNOに試みましたが、まだ問題があります。クリアカラーを使用すると、空白になります(白、無し)。私はsetNeedsDisplayを置く必要がありますか? –

+0

多分scrollviewdidscrollデリゲートで、それは全体のための1つのラベルですか?もしそうなら、別のフォントが必要な場合は、UITextViewを使用するか、コアグラフィックスでテキスト描画を行うべきだと思います。 – jbat100

+0

11月11日(日付)と要約(日付ラベルの下)は別のラベルです。私は別のフォントは必要ありません。 UITextViewはUiScrollViewのサブクラスであるため使用したくないので、先ほどuitextviewを実装しましたが、部分的にテキストが途切れてしまったので、UILabel.Iを選択します。ラベルからsetNeedsDisplayを呼び出すのですが、スクロール時に遅い。 –

関連する問題