83

Here's my code:

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

I get a warning that UILinebBreakModeWordWrap is deprecated in iOS 6.

Aamir
  • 16,329
  • 10
  • 59
  • 65
Drakesinmoue
  • 895
  • 1
  • 6
  • 11

2 Answers2

204

You need to use NSLineBreakByWordWrapping in iOS 6

For your code try this:

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

an example on a label would be:

[label setLineBreakMode:NSLineBreakByWordWrapping];

Instead of

label.lineBreakMode = UILineBreakModeWordWrap;
Mihriban Minaz
  • 3,043
  • 2
  • 32
  • 52
Andy Davies
  • 4,287
  • 5
  • 24
  • 31
14

To maintain backward compatibility, you can create a macro as below:

#ifdef __IPHONE_6_0
# define LINE_BREAK_WORD_WRAP NSLineBreakByWordWrapping
#else
# define LINE_BREAK_WORD_WRAP UILineBreakModeWordWrap
#endif
Sanjer
  • 152
  • 2
  • 9
Mihriban Minaz
  • 3,043
  • 2
  • 32
  • 52