#ios #uilabel #nsattributedstring #nstextattachment #sf-symbols
#iOS #uilabel #nsattributedstring #nstextattachment #sf-символы
Вопрос:
У меня есть метка, на которой я пытаюсь поместить изображение символа в начале метки, а затем текст после нее. Это работает, но изображение символа никогда не меняет размер. Неважно, какой размер я указываю в конфигурации UIImageSymbolConfiguration, он остается небольшим. Если я возьму этот код и помещу изображение в UIImageView, изображение увеличится, как и ожидалось. Есть ли что-то неправильное во всем, что я здесь делаю, связанное с конфигурацией изображения символа?
UILabel *label = [[UILabel alloc] init]; NSString *title = @"Some Text"; label.adjustsFontForContentSizeCategory = YES; NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@", title] attributes:@{ NSFontAttributeName: [UIFont preferredFontForTextStyle:UIFontTextStyleBody], NSForegroundColorAttributeName: [UIColor labelColor] }]; UIImageSymbolConfiguration *configuration = [UIImageSymbolConfiguration configurationWithFont:[UIFont preferredFontForTextStyle:UIFontTextStyleLargeTitle]]; UIImage *squareImage = [[UIImage systemImageNamed:@"square.fill" withConfiguration:configuration] imageWithTintColor:[UIColor systemBlueColor]]; NSTextAttachment *imageAttachment = [NSTextAttachment textAttachmentWithImage:squareImage]; [string insertAttributedString:[NSAttributedString attributedStringWithAttachment:imageAttachment] atIndex:0]; label.attributedText = string;