私はiosアプリの最小ios 5に取り組んでおり、uilabelsで奇妙な問題に遭遇しました。または、明らかな何かが欠けているかもしれません。とにかく、私が抱えている問題は、テキストを中央揃えにするuilabelがあることです。iOS 5 ではすべて正常に動作しますが、iOS 6 では常に左揃えになります。uilabel text align を行う古い方法が廃止され、そのように設定すると機能することがわかりました。
self.topComment.textAlignment = NSTextAlignmentCenter;
しかし、この方法でも、ios 5 では中央揃え、ios 6 では左揃えになっています。ラベルのテキストのフォントのサイズを変更して、最小サイズと最大サイズに合わせようとするコードがあります。
UIFont *font = self.topComment.font;
for(int i = maxFont; i > minFont; i--)
{
// Set the new font size.
font = [font fontWithSize:i];
CGSize constraintSize = CGSizeMake(self.topComment.frame.size.width, 1000);
CGSize labelSize = [topString sizeWithFont:font constrainedToSize:constraintSize lineBreakMode:UILineBreakModeWordWrap];
if(labelSize.height <= self.topComment.frame.size.height ) {
fits = YES;
break;
}
//self.topComment.text = topString;
}
self.topComment.font = font;
self.topComment.text = topString;
それが私がラベルに対して行っている唯一のことですが、ios 6では常に左揃えです。テキストを含むuilabelにドロップして中央揃えにし、上記のコードを使用しない場合、両方の中央に配置されることに注意してください。 iOS 5 および 6。