web-dev-qa-db-fra.com

UILineBreakModeWordWrap est obsolète

Voici mon code:

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

Je reçois un message m'avertissant que UILinebBreakModeWordWrap est obsolète dans iOS 6.

82
Drakesinmoue

Vous devez utiliser NSLineBreakByWordWrapping dans iOS 6

Pour votre code, essayez ceci:

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];

un exemple sur une étiquette serait:

[label setLineBreakMode:NSLineBreakByWordWrapping];

Au lieu de

label.lineBreakMode = UILineBreakModeWordWrap;
202
Andy Davies

Pour maintenir la compatibilité ascendante, vous pouvez créer une macro comme suit:

#ifdef __IPHONE_6_0
# define LINE_BREAK_Word_WRAP NSLineBreakByWordWrapping
#else
# define LINE_BREAK_Word_WRAP UILineBreakModeWordWrap
#endif
14
Mihriban Minaz