Могу ли я установить свойство `attributedText“ UILabel`

Могу ли я установить свойство UILabel объекта UILabel ? Я попробовал приведенный ниже код:

 UILabel *label = [[UILabel alloc] init]; label.attributedText = @"asdf"; 

Но он дает эту ошибку:

Свойство «attributedText» не найдено на объекте типа «UILabel *»

#import <CoreText/CoreText.h> не работает

7 Solutions collect form web for “Могу ли я установить свойство `attributedText“ UILabel`”

К сожалению, UILabel не поддерживает атрибутированные строки. Вместо этого вы можете использовать OHAttributedLabel .

Обновление. Начиная с iOS6, UILabel поддерживает UILabel строки. См. Ссылку UILabel или ответ Майкла Кесслера ниже для более подробной информации.

Вот полный пример использования атрибутного текста на ярлыке:

 NSString *redText = @"red text"; NSString *greenText = @"green text"; NSString *purpleBoldText = @"purple bold text"; NSString *text = [NSString stringWithFormat:@"Here are %@, %@ and %@", redText, greenText, purpleBoldText]; // If attributed text is supported (iOS6+) if ([self.label respondsToSelector:@selector(setAttributedText:)]) { // Define general attributes for the entire text NSDictionary *attribs = @{ NSForegroundColorAttributeName: self.label.textColor, NSFontAttributeName: self.label.font }; NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] initWithString:text attributes:attribs]; // Red text attributes UIColor *redColor = [UIColor redColor]; NSRange redTextRange = [text rangeOfString:redText];// * Notice that usage of rangeOfString in this case may cause some bugs - I use it here only for demonstration [attributedText setAttributes:@{NSForegroundColorAttributeName:redColor} range:redTextRange]; // Green text attributes UIColor *greenColor = [UIColor greenColor]; NSRange greenTextRange = [text rangeOfString:greenText];// * Notice that usage of rangeOfString in this case may cause some bugs - I use it here only for demonstration [attributedText setAttributes:@{NSForegroundColorAttributeName:greenColor} range:greenTextRange]; // Purple and bold text attributes UIColor *purpleColor = [UIColor purpleColor]; UIFont *boldFont = [UIFont boldSystemFontOfSize:self.label.font.pointSize]; NSRange purpleBoldTextRange = [text rangeOfString:purpleBoldText];// * Notice that usage of rangeOfString in this case may cause some bugs - I use it here only for demonstration [attributedText setAttributes:@{NSForegroundColorAttributeName:purpleColor, NSFontAttributeName:boldFont} range:purpleBoldTextRange]; self.label.attributedText = attributedText; } // If attributed text is NOT supported (iOS5-) else { self.label.text = text; } 
 NSString *str1 = @"Hi Hello, this is plain text in red"; NSString *cardName = @"This is bold text in blue"; NSString *text = [NSString stringWithFormat:@"%@\n%@",str1,cardName]; // Define general attributes for the entire text NSDictionary *attribs = @{ NSForegroundColorAttributeName:[UIColor redColor], NSFontAttributeName: [UIFont fontWithName:@"Helvetica" size:12] }; NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] initWithString:text attributes:attribs]; UIFont *boldFont = [UIFont fontWithName:@"Helvetica-Bold" size:14.0]; NSRange range = [text rangeOfString:cardName]; [attributedText setAttributes:@{NSForegroundColorAttributeName: [UIColor blueColor], NSFontAttributeName:boldFont} range:range]; myLabel = [[UILabel alloc] initWithFrame:CGRectZero]; myLabel.attributedText = attributedText; 

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

  NSString *str=@"10 people likes this"; NSString *str2=@"likes this"; if ([str hasSuffix:str2]) { NSMutableAttributedString * string = [[NSMutableAttributedString alloc] initWithString:str]; // for string 1 // [string addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0,str.length-str2.length)]; [string addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:14] range:NSMakeRange(0,str.length-str2.length)]; // for string 2 // [string addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange((str.length-str2.length),str2.length)]; [string addAttribute:NSFontAttributeName value:[UIFont italicSystemFontOfSize:12] range:NSMakeRange((str.length-str2.length),str2.length)]; label.attributedText=string; } else { label.text =str; } 

Для людей, использующих быстрый, вот однострочный:

 myLabel.attributedText = NSMutableAttributedString(string: myLabel.text!, attributes: [NSFontAttributeName:UIFont(name: "YourFont", size: 12), NSForegroundColorAttributeName: UIColor.whiteColor()]) 

Надеюсь это поможет 😉

 NSMutableAttributedString* attrStr = [NSMutableAttributedString attributedStringWithString:@"asdf"]; [attrStr setFont:[UIFont systemFontOfSize:12]]; [attrStr setTextColor:[UIColor grayColor]]; [attrStr setTextColor:[UIColor redColor] range:NSMakeRange(0,5)]; lbl.attributedText = attrStr; 
 UIFont *font = [UIFont boldSystemFontOfSize:12]; NSDictionary *fontDict = [NSDictionary dictionaryWithObject: font forKey:NSFontAttributeName]; NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:@" v 1.2.55" attributes: fontDict]; UIFont *fontNew = [UIFont boldSystemFontOfSize:17]; NSDictionary *fontDictNew = [NSDictionary dictionaryWithObject: fontNew forKey:NSFontAttributeName]; NSMutableAttributedString *attrStringNew = [[NSMutableAttributedString alloc] initWithString:@“Application” attributes: fontDictNew]; [attrStringNew appendAttributedString: attrString]; self.vsersionLabel.attributedText = attrStringNew; 
  • Существуют ли какие-либо ограничения на сохранение NSDictionary в файл
  • Не удалось сохранить значения NSUserDefaults iOS
  • iOS 9 didRangeBeacons вызывал больше раз. iOS-8 это было раз в секунду
  • Сканирование статического UIImage с помощью ios ZBar SDK
  • Программно найти, если iPad находится на IPv4 или сети IPv6
  • После успешного входа в систему Google приложение сбой в IOS (Objective C)
  • Xcode отключает заголовок заголовка UIButton при нажатии
  • NSAttributedString сообщает о неправильных размерах для UITextView sizeThatFits и boundingRectWithSize с правильными настройками параметров
  • как заказать последовательности тестовых тестов kif?
  • Значение перечисления «SHKShareTypeUndefined» не обрабатывается в коммутаторе
  • Проблема с картой для Xcode 5 скомпилировала iPhone-приложение в iPad после обновления IOS7 (отлично работает на iPhone)
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.