Uilinebreakmodewordwrap является устаревшим


вот мой код:

CGSize s = [string sizeWithFont:[UIFont systemFontOfSize:20]
               constrainedToSize:CGSizeMake(self.view.bounds.size.width - 40, CGFLOAT_MAX) // - 40 For cell padding
                   lineBreakMode:UILineBreakModeWordWrap];

Я получаю предупреждение о том, что UILinebBreakModeWordWrap устарел в iOS 6.

2 82

2 ответа:

вы должны использовать NSLineBreakByWordWrapping в iOS 6

для вашего кода попробуйте это:

NSString *string = @"bla";

CGSize s = [string sizeWithFont:[UIFont systemFontOfSize:20]
              constrainedToSize:CGSizeMake(self.view.bounds.size.width - 40, CGFLOAT_MAX) // - 40 For cell padding
                  lineBreakMode:NSLineBreakByWordWrapping];

пример на этикетке будет:

[label setLineBreakMode:NSLineBreakByWordWrapping];

вместо

label.lineBreakMode = UILineBreakModeWordWrap;

для поддержания обратной совместимости, вы можете создать макрос, как показано ниже:

#ifdef __IPHONE_6_0
# define LINE_BREAK_WORD_WRAP NSLineBreakByWordWrapping
#else
# define LINE_BREAK_WORD_WRAP UILineBreakModeWordWrap
#endif