-[__NSCFString _getValue:forType:]: 无法识别的选择器发送到实例

-[__NSCFString _getValue:forType:]: unrecognized selector sent to instance

NSMutableAttributedString *attString = [[NSMutableAttributedString alloc] initWithString:timeString];
    UIFont *font = [UIFont fontWithName:self.txtFieldForEndTime.font.familyName size:self.txtFieldForEndTime.font.pointSize / 2];

    NSDictionary *attrs = @{
                            NSFontAttributeName:font,
                            (__bridge NSString *)  kCTSuperscriptAttributeName:[string substringFromIndex:string.length - 2]
                            };
    [attString setAttributes:attrs range:[string rangeOfString:@"PM"]];

以上代码试图对最后两个 AM / PM 字符进行超级脚本处理。

但应用程序崩溃,原因是 -[__NSCFString _getValue:forType:]: 无法识别的选择器已发送到实例。

你能告诉我这段代码有什么问题吗?如果您有上标部分 NSString 的工作代码,请告诉我。

您可以通过减小字体的磅值来伪造上标,并使用 NSBaselineOffsetAttributeName 属性将文本向上或向下移动到基线。