UILineBreakModeWordWrap হ্রাস করা হয়েছে


83

আমার কোডটি এখানে:

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

আমি একটি সতর্কতা পেয়েছি যে ইউইলাইনব্রেইকমোড ওয়ার্ড ওয়ার্যাপ আইওএস 6 এ অবহেলা করা হয়েছে।

উত্তর:


204

আপনাকে NSLineBreakByWordWrappingআইওএস 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;

4
কেন কেবল অ্যাপল এর নাম পরিবর্তন করেছে? উদ্দেশ্য কি ?
পল ব্রেভজিনস্কি

14

পিছিয়ে সামঞ্জস্য বজায় রাখতে, আপনি নীচের মত একটি ম্যাক্রো তৈরি করতে পারেন:

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

ম্যাক্রো উপস্থিত থাকলে কেন Xcode সতর্কতাগুলিকে পতাকাঙ্কিত করে?
উইলিয়াম জিপি

আপনার কি ন্যূনতম SDK <= ios 6 আছে? আপনি দ্রুত বা উদ্দেশ্য-সি ব্যবহার করেন?
মিহরিবান মিনাজ

এসডিকে 9.2, ন্যূনতম লক্ষ্য ios7, ওবজ-সি
উইলিয়াম জিপি

তারপরে সরাসরি এনএসলাইনব্রেইকবাইওয়ার্ড ওয়ার্ডিং ব্যবহার করুন।
মিহরিবান মিনাজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.