2016-09-30 6 views
1

Это то, что я пытаюсь достичь:NSRangePointer ошибка Swift

var range : NSRange? = NSMakeRange(0, (attributedString?.length)!) 
attributedString?.attribute(NSFontAttributeName: UIFont.fontNames(forFamilyName: "OpenSans-Regular"), at: 1, effectiveRange: &range) 

Во второй строке, я получаю компиляции ошибки времени:

Argument labels '(NSFontAttributeName:, at:, effectiveRange:)' do not match any available overloads

ответ

3

Понадобится:

var range = NSRange(location: 0, length: attributedString?.length) 
let font = attributedString?.attribute(NSFontAttributeName, at: 1, effectiveRange: &range) 

Первый параметр - это только атрибут, который вы хотите проверить. Вы не передаете определенный шрифт. Этот метод подскажет, хотите ли шрифт найти в указанном месте.

+0

Как добавить этот атрибут. Невозможно найти функцию перегрузки для NSAttributedString, которая принимает только атрибут – Nitish

+0

См. Мой комментарий к вашему другому вопросу. Вы используете неправильный метод для добавления атрибута. – rmaddy

+0

Как добавить шрифт в documentAttributes? – Nitish