6

私のLocalizable.stringsでは、次のように末尾に空白を含む文字列を定義します。

"%@ points  " = "%@ Punkte  ";

これは iOS6 では問題なく機能しましたが、iOS7 エミュレーターで実行すると、文字列がトリミングされ、末尾の空白が取り除かれます。

背景: 上記の文字列は、ラベル内で右揃えになっています。UILabel をサブクラス化したり、1 つのラベルだけに大量のコードを記述したりしたくないので、空白をパディングとして使用します。

ASCII 記号も使用してみましたが、これもうまくいきませんでした。

シンプルな魂の提案をいただければ幸いです。

ありがとうございました!

4

3 に答える 3

9

おそらく、私のために働いた NSMutableAttributedString でこの回避策を試すことができます。「。」空白の代わりに配置されます。

NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%i.", count]];


 [string addAttribute:NSForegroundColorAttributeName value:[UIColor whiteColor] range:NSMakeRange(0,string.length-1)];

 [string addAttribute:NSForegroundColorAttributeName value:[UIColor clearColor] range:NSMakeRange(string.length-1,1)];
于 2013-09-24T05:04:26.167 に答える
1

非改行スペース文字を試しましたか?

于 2013-09-21T03:20:06.563 に答える
0

わかりました、ラベルをサブビューとしてビューに追加し、ラベルの幅をビューの幅より少し小さく設定することで、この問題を解決しています。

すべてのスタイリング、つまり背景画像、アニメーションなどは、ラベルではなくビューに対して行われます。KISSの原則ではありませんが、機能します。

とにかくありがとう。

于 2013-09-21T10:03:26.547 に答える