Xcode5 и iOS7: конечные пробелы в строках в Localizable.strings больше не работают

В моих Localizable.strings я определяю строку с конечными пробелами, как это:

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

Это хорошо работало в iOS6, но при запуске на эмуляторе iOS7 строка обрезается, а завершающие пробелы удаляются.

Фон: строка выше выровнена по правому краю в метке. Я использую пробелы в качестве отступов, так как не хочу создавать подкласс UILabel или писать кучу кода только для одной метки.

Я также попытался использовать знаки ASCII, но это также не сработало.

Любые предложения по простой душе будут оценены.

Спасибо!

3 ответа

Решение

Возможно, вы можете попробовать этот обходной путь с 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)];

Вы пробовали неразрывный пробел?

Хорошо, я решаю эту проблему, добавляя метку как подпредставление к представлению и устанавливая ширину метки немного меньше ширины представления.

Все стили, т. Е. Фоновое изображение, анимация и т. Д., Выполняются для представления, а не для надписи. Не поцелуй принцип, но это работает.

Спасибо, в любом случае.

Другие вопросы по тегам