NSLayoutManagerDelegate
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 7.0 и позже.
NSLayoutManagerDelegate
протокол определяет дополнительные методы, реализованные делегатами NSLayoutManager
объекты.
-
layoutManager (_: shouldBreakLineByHyphenatingBeforeCharacterAtIndex:) - layoutManager:shouldBreakLineByHyphenatingBeforeCharacterAtIndex:
Отправленный при определении дефисной точки.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, shouldBreakLineByHyphenatingBeforeCharacterAtIndexcharIndex
: Int) -> BoolObjective C
- (BOOL)layoutManager:(NSLayoutManager *)
layoutManager
shouldBreakLineByHyphenatingBeforeCharacterAtIndex:(NSUInteger)charIndex
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
charIndex
Индекс символа, разграничивающего поиск дефисной точки.
Возвращаемое значение
YES
true
если текущая дефисная точка приемлема;NO
false
если менеджер по расположению должен найти следующую возможность расстановки переносов преждеcharIndex
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: shouldBreakLineByWordBeforeCharacterAtIndex:) - layoutManager:shouldBreakLineByWordBeforeCharacterAtIndex:
Отправленный при определении контрольной точки мягкой линии.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, shouldBreakLineByWordBeforeCharacterAtIndexcharIndex
: Int) -> BoolObjective C
- (BOOL)layoutManager:(NSLayoutManager *)
layoutManager
shouldBreakLineByWordBeforeCharacterAtIndex:(NSUInteger)charIndex
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
charIndex
Индекс символа, разграничивающего поиск контрольной точки.
Возвращаемое значение
YES
true
если текущая точка прерывания строки приемлема;NO
false
если менеджер по расположению должен найти следующую возможность контрольной точки преждеcharIndex
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: lineSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:) - layoutManager:lineSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:
Возвращает интервал после строки, заканчивающейся данным индексом глифа.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, lineSpacingAfterGlyphAtIndexglyphIndex
: Int, withProposedLineFragmentRectrect
: CGRect) -> CGFloatObjective C
- (CGFloat)layoutManager:(NSLayoutManager *)
layoutManager
lineSpacingAfterGlyphAtIndex:(NSUInteger)glyphIndex
withProposedLineFragmentRect:(CGRect)rect
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
glyphIndex
Индекс глифа в конце строки.
rect
Предложенный прямоугольник фрагмента строки для текущей строки.
Возвращаемое значение
Межстрочный интервал после текущей строки.
Обсуждение
В то время как каждая строка размечается, чтобы включить менеджеру по расположению делегата для настройки формы строки, это сообщение отправляется.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: paragraphSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:) - layoutManager:paragraphSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:
Возвращает расстояние между абзацами после строки, заканчивающейся данным индексом глифа.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, paragraphSpacingAfterGlyphAtIndexglyphIndex
: Int, withProposedLineFragmentRectrect
: CGRect) -> CGFloatObjective C
- (CGFloat)layoutManager:(NSLayoutManager *)
layoutManager
paragraphSpacingAfterGlyphAtIndex:(NSUInteger)glyphIndex
withProposedLineFragmentRect:(CGRect)rect
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
glyphIndex
Индекс глифа в конце строки.
rect
Предложенный прямоугольник фрагмента строки для текущей строки.
Возвращаемое значение
parapgraph, располагающий с интервалами после текущей строки.
Обсуждение
В то время как каждая строка размечается, чтобы включить менеджеру по расположению делегата для настройки формы строки, это сообщение отправляется.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: paragraphSpacingBeforeGlyphAtIndex:withProposedLineFragmentRect:) - layoutManager:paragraphSpacingBeforeGlyphAtIndex:withProposedLineFragmentRect:
Возвращает расстояние между абзацами перед строкой начиная с данного индекса глифа.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, paragraphSpacingBeforeGlyphAtIndexglyphIndex
: Int, withProposedLineFragmentRectrect
: CGRect) -> CGFloatObjective C
- (CGFloat)layoutManager:(NSLayoutManager *)
layoutManager
paragraphSpacingBeforeGlyphAtIndex:(NSUInteger)glyphIndex
withProposedLineFragmentRect:(CGRect)rect
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
glyphIndex
Индекс глифа в начале строки.
rect
Предложенный прямоугольник фрагмента строки для текущей строки.
Возвращаемое значение
parapgraph, располагающий с интервалами перед текущей строкой.
Обсуждение
В то время как каждая строка размечается, чтобы включить менеджеру по расположению делегата для настройки формы строки, это сообщение отправляется.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: boundingBoxForControlGlyphAtIndex:forTextContainer:proposedLineFragment:glyphPosition:characterIndex:) - layoutManager:boundingBoxForControlGlyphAtIndex:forTextContainer:proposedLineFragment:glyphPosition:characterIndex:
Возвращает ограничительный прямоугольник для указанного глифа управления с указанными параметрами.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, boundingBoxForControlGlyphAtIndexglyphIndex
: Int, forTextContainertextContainer
: NSTextContainer, proposedLineFragmentproposedRect
: CGRect, glyphPositionglyphPosition
: CGPoint, characterIndexcharIndex
: Int) -> CGRectObjective C
- (CGRect)layoutManager:(NSLayoutManager *)
layoutManager
boundingBoxForControlGlyphAtIndex:(NSUInteger)glyphIndex
forTextContainer:(NSTextContainer *)textContainer
proposedLineFragment:(CGRect)proposedRect
glyphPosition:(CGPoint)glyphPosition
characterIndex:(NSUInteger)charIndex
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
glyphIndex
Индекс рассматриваемого глифа управления.
textContainer
Текстовый контейнер для использования для вычисления позиции.
proposedRect
Предложенный прямоугольник фрагмента строки.
glyphPosition
Позиция глифа в
textContainer
.charIndex
Индекс символа в
textContainer
.Возвращаемое значение
Ограничительный прямоугольник для указанного глифа управления с указанными параметрами.
Обсуждение
Посланный разрешение метрик глифа для
NSControlCharacterWhitespaceAction
управляющий символ.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: didCompleteLayoutForTextContainer:atEnd:) - layoutManager:didCompleteLayoutForTextContainer:atEnd:
Сообщает делегату, что данный менеджер по расположению закончил излагать текст в данном текстовом контейнере.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, didCompleteLayoutForTextContainertextContainer
: NSTextContainer?, atEndlayoutFinishedFlag
: Bool)Objective C
- (void)layoutManager:(NSLayoutManager *)
layoutManager
didCompleteLayoutForTextContainer:(NSTextContainer *)textContainer
atEnd:(BOOL)layoutFinishedFlag
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
textContainer
Текстовый контейнер, в котором расположение завершено. Если
nil
, если нет достаточного количества контейнеров для содержания всего текста; делегат может использовать эту информацию в качестве сигнала для добавления другого текстового контейнера.layoutFinishedFlag
Если
YES
true
,layoutManager
закончен, изложив его текст — это также означает этоtextContainer
контейнер окончательного текста, используемый менеджером по расположению. Делегаты могут использовать эту информацию, чтобы показать индикатор или фон или включить или отключить кнопку, вызывающую непосредственное расположение текста.Обсуждение
Это сообщение отправляется каждый раз, когда текстовый контейнер был заполнен. Этот метод может быть полезен для разбиения на страницы.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: textContainer:didChangeGeometryFromSize:) - layoutManager:textContainer:didChangeGeometryFromSize:
Отправленное право перед менеджером по расположению лишает законной силы расположение вследствие текстового контейнера изменяющаяся геометрия.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, textContainertextContainer
: NSTextContainer, didChangeGeometryFromSizeoldSize
: CGSize)Objective C
- (void)layoutManager:(NSLayoutManager *)
layoutManager
textContainer:(NSTextContainer *)textContainer
didChangeGeometryFromSize:(CGSize)oldSize
Параметры
layoutManager
Менеджер по расположению, лишающий законной силы расположение.
textContainer
Текстовый контейнер, изменивший геометрию.
oldSize
Размер текстового контейнера, прежде чем это изменило геометрию.
Обсуждение
Делегат может реагировать на геометрию, изменяют и выполняют корректировки те, которые воссоздают путь исключения.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: shouldGenerateGlyphs:properties:characterIndexes:font:forGlyphRange:) - layoutManager:shouldGenerateGlyphs:properties:characterIndexes:font:forGlyphRange:
Позволяет настроить начальный процесс генерации глифа.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, shouldGenerateGlyphsglyphs
: UnsafePointer<CGGlyph>, propertiesprops
: UnsafePointer<NSGlyphProperty>, characterIndexescharIndexes
: UnsafePointer<Int>, fontaFont
: UIFont!, forGlyphRangeglyphRange
: NSRange) -> IntObjective C
- (NSUInteger)layoutManager:(NSLayoutManager *)
layoutManager
shouldGenerateGlyphs:(const CGGlyph *)glyphs
properties:(const NSGlyphProperty *)props
characterIndexes:(const NSUInteger *)charIndexes
font:(UIFont *)aFont
forGlyphRange:(NSRange)glyphRange
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
glyphs
Указатель на кэш глифа менеджера по расположению.
props
Указатель на буферное, содержащее свойства глифа для глифов в кэше.
charIndexes
Указатель на начальное значение индекса для символов в текстовом хранении, для которого сгенерированы глифы.
aFont
Шрифт для переопределения атрибутов шрифта в текстовом хранении для указанного диапазона символов.
glyphRange
Диапазон глифов в кэше глифа для установки.
Возвращаемое значение
Фактический диапазон глифа сохранен в этом методе. Путем возврата
0
, это может указать для менеджера по расположению, чтобы сделать обработку по умолчанию.Обсуждение
Это сообщение отправляется каждый раз, когда менеджер по расположению собирается хранить начальную информацию глифа через
setGlyphs:properties:characterIndexes:font:forGlyphRange:
. Для настройки начального процесса генерации глифа этот метод может вызватьsetGlyphs:properties:characterIndexes:font:forGlyphRange:
с измененной информацией о глифе.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
layoutManager (_: shouldUseAction:forControlCharacterAtIndex:) - layoutManager:shouldUseAction:forControlCharacterAtIndex:
Возвращает действие управляющего символа для управляющего символа в данном индексе символа.
Объявление
Swift
optional func layoutManager(_
layoutManager
: NSLayoutManager, shouldUseActionaction
: NSControlCharacterAction, forControlCharacterAtIndexcharIndex
: Int) -> NSControlCharacterActionObjective C
- (NSControlCharacterAction)layoutManager:(NSLayoutManager *)
layoutManager
shouldUseAction:(NSControlCharacterAction)action
forControlCharacterAtIndex:(NSUInteger)charIndex
Параметры
layoutManager
Менеджер по расположению, делающий расположение.
action
Предложенные меры управляющего символа для символа в данном индексе. Возможные значения перечисляются
NSControlCharacterAction
.charIndex
Индекс управляющего символа, для которого предложены меры.
Возвращаемое значение
Действие управляющего символа для управляющего символа в данном индексе.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Сообщает делегату, что данный менеджер по расположению лишил законной силы информацию макета (не информация о глифе).
Объявление
Swift
optional func layoutManagerDidInvalidateLayout(_
sender
: NSLayoutManager)Objective C
- (void)layoutManagerDidInvalidateLayout:(NSLayoutManager *)
sender
Параметры
sender
Менеджер по расположению, лишивший законной силы расположение.
Обсуждение
Это сообщение отправляется только, когда расположение было завершено и затем стало лишенным законной силы по некоторым причинам. Делегаты могут использовать эту информацию, чтобы показать индикатор фонового расположения или включить кнопку, вызывающую непосредственное расположение текста.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.