NSView
Класс сразу
NSView
класс определяет основное получение, обработку событий и печать архитектуры приложения. Вы обычно не используете NSView
объекты непосредственно. Вместо этого Вы используете объекты, классы которых убывают от NSView
или Вы разделяете на подклассы NSView
самостоятельно и переопределение его методы для реализации поведения Вам нужно. Для любого объекта представления существует много методов, которые можно использовать как есть.
NSView
класс обеспечивает инфраструктуру для рисования, печати и обработки событий в Вашем приложении. Экземпляры NSView
класс (или один из его подклассов) обычно известен как объекты представления, или просто как представления.
Представления обрабатывают представление и взаимодействие с видимым содержанием Вашего приложения. Вы располагаете одно или более представлений в NSWindow
объект, действующий как обертка для Вашего содержания. Объект представления определяет прямоугольную область для рисования и получения событий от нажатия мыши. Представления обрабатывают другую работу по дому также, включая перетаскивание значков и работу с NSScrollView
класс для поддержки эффективной прокрутки.
Большая часть функциональности NSView
класс автоматически вызывается Набором Приложения. Если Вы не реализуете конкретный подкласс NSView
или работая глубоко с содержанием иерархии представления во время выполнения, Вы не должны знать много об интерфейсе этого класса. Посмотрите Обычно Используемые Методы для методов, которые Вы могли бы использовать независимо.
Для получения дополнительной информации о как NSView
экземпляры обрабатывают событие и сообщения действия, видят Руководство по Обработке событий Какао. Для получения дополнительной информации об отображении подсказок и контекстных меню, посмотрите Контекстные меню Отображения и Управление Подсказками.
Разделение на подклассы примечаний
NSView
возможно, самый важный класс в Наборе Приложения когда дело доходит до разделения на подклассы и наследования. Большинство объектов пользовательского интерфейса, которые Вы видите в приложении Какао, является объектами, наследовавшимися от NSView
. Если Вы хотите создать объект, рисующий себя специальным способом, или это реагирует на щелчки мышью специальным способом, Вы создали бы пользовательский подкласс NSView
(или класса, наследовавшегося от NSView
). Разделение на подклассы NSView
такая общая и важная процедура, которую описывают несколько технических документов, как и нарисовать в пользовательских подклассах и реагировать на события в пользовательских подклассах. Посмотрите, что Какао Рисует Руководство по Обработке событий Руководства и Какао (особенно «Обрабатывающий События от нажатия мыши» и «События от нажатия мыши»).
Обработка событий в подклассе
Если Вы разделяете на подклассы NSView
непосредственно и определенные типы дескриптора событий, реализация Ваших событийных методов не должна обычно вызывать super
. Представления наследовали свои возможности обработки событий от их NSResponder
родительский класс. Поведение по умолчанию для респондентов состоит в том, чтобы передать события цепочка респондента, которая не является поведением, которое Вы обычно хотите при обработке событий в пользовательском представлении. Поэтому Вы не должны вызывать super
если Ваше представление реализует какой-либо из следующих методов и обрабатывает событие:
Если Ваше представление убывает от класса кроме NSView
, вызвать super
позволять родительскому представлению обработать любые события, которые Вы не делаете.
Наследование
-
NSObject
-
NSResponder
-
NSView
-
ABPeoplePickerView
-
ABPersonView
-
AMWorkflowView
-
AUGenericView
-
AUPannerView
-
AVCaptureView
-
AVPlayerView
-
IKCameraDeviceView
-
IKDeviceBrowserView
-
IKFilterBrowserView
-
IKFilterUIView
-
IKImageBrowserView
-
IKImageView
-
IKScannerDeviceView
-
IOBluetoothPasskeyDisplay
-
JavaFrameView
-
MKAnnotationView
-
MKMapView
-
NSBox
-
NSClipView
-
NSCollectionView
-
NSControl
-
NSOpenGLView
-
NSProgressIndicator
-
NSRulerView
-
NSScrollView
-
NSSplitView
-
NSStackView
-
NSTableCellView
-
NSTableHeaderView
-
NSTableRowView
-
NSTabView
-
NSText
-
NSVisualEffectView
-
PDFThumbnailView
-
PDFView
-
QCCompositionParameterView
-
QCCompositionPickerView
-
QCView
-
QLPreviewView
-
QTCaptureView
-
QTMovieView
-
QuartzFilterView
-
SCNView
-
ScreenSaverView
-
SKView
-
WebFrameView
-
Веб-представление
-
WKWebView
-
NSObject
-
NSResponder
-
NSView
-
ABPeoplePickerView
-
ABPersonView
-
AMWorkflowView
-
AUGenericView
-
AUPannerView
-
AVCaptureView
-
AVPlayerView
-
IKCameraDeviceView
-
IKDeviceBrowserView
-
IKFilterBrowserView
-
IKFilterUIView
-
IKImageBrowserView
-
IKImageView
-
IKScannerDeviceView
-
IOBluetoothPasskeyDisplay
-
JavaFrameView
-
MKAnnotationView
-
MKMapView
-
NSBox
-
NSClipView
-
NSCollectionView
-
NSControl
-
NSMenuView
-
NSMovieView
-
NSOpenGLView
-
NSProgressIndicator
-
NSQuickDrawView
-
NSRulerView
-
NSScrollView
-
NSSplitView
-
NSStackView
-
NSTableCellView
-
NSTableHeaderView
-
NSTableRowView
-
NSTabView
-
NSText
-
NSVisualEffectView
-
PDFThumbnailView
-
PDFView
-
QCCompositionParameterView
-
QCCompositionPickerView
-
QCView
-
QLPreviewView
-
QTCaptureView
-
QTMovieView
-
QuartzFilterView
-
SCNView
-
ScreenSaverView
-
SFAuthorizationView
-
SFCertificateView
-
SKView
-
WebFrameView
-
Веб-представление
-
WKWebView
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSAccessibility
-
NSAccessibilityElementProtocol
-
NSAnimatablePropertyContainer
-
NSAppearanceCustomization
-
NSCoding
-
NSDraggingDestination
-
NSObjectProtocol
-
NSUserInterfaceItemIdentification
-
Печатаемый
-
Reflectable
-
NSAccessibility
-
NSAccessibilityElement
-
NSAnimatablePropertyContainer
-
NSAppearanceCustomization
-
NSCoding
-
NSDraggingDestination
-
NSObject
-
NSUserInterfaceItemIdentification
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
init (кадр:) - initWithFrame:
Определяемый инициализаторИнициализирует и возвращается недавно выделенный
NSView
объект с указанным прямоугольником кадра.Объявление
Swift
init(frame
frameRect
: NSRect)Objective C
- (instancetype)initWithFrame:(NSRect)
frameRect
Параметры
frameRect
Прямоугольник кадра для создаваемого объекта представления.
Возвращаемое значение
Инициализированный
NSView
объект или ноль, если не мог бы быть создан объект.Обсуждение
Новый объект представления должен быть вставлен в иерархию представления окна, прежде чем это сможет использоваться. Этот метод является определяемым инициализатором для
NSView
класс. Возвращает инициализированный объект.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Восстанавливает представление к начальному состоянию так, чтобы оно могло быть снова использовано.
Объявление
Swift
func prepareForReuse()
Objective C
- (void)prepareForReuse
Обсуждение
Реализация по умолчанию этого метода устанавливает альфу окна в
1.0
и его скрытое состояние кNO
false
. Подклассы могут переопределить этот метод и использовать его для возврата представления его начальному состоянию. Подклассы должны вызватьsuper
в некоторый момент в их реализации.Этот метод предлагает способ сбросить представление к некоторому начальному состоянию так, чтобы это могло быть снова использовано. Например,
NSTableView
класс использует его, чтобы подготовить представления к повторному использованию и таким образом избежать расхода создания новых представлений, поскольку они прокручивают в представление. При реализации системы повторного использования представления в собственном коде можно вызвать этот метод от собственного кода до многократного использования их.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
суперпредставление суперпредставление
СвойствоПредставление, которое является родителем текущего представления. (только для чтения)
Объявление
Swift
unowned(unsafe) var superview: NSView? { get }
Objective C
@property(readonly, assign) NSView *superview
Обсуждение
Суперпредставление является непосредственным наследователем текущего представления. Значение этого свойства
nil
когда представление не установлено в иерархии представления. Для установки значения этого свойства используйтеaddSubview:
метод для встраивания текущего представления в другом представлении.Когда проверка значения этого свойства многократно или рекурсивно, убедиться сравнить суперпредставление возражает против представления содержания окна, чтобы избежать продолжаться из иерархии представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает подпредставления получателя в указанные подпредставления.
Объявление
Objective C
- (void)setSubviews:(NSArray *)
newSubviews
Параметры
newSubviews
Массив подпредставлений.
newSubviews
массив может состоять из имеющих существующих подпредставлений получателя или других представленийnil
как их суперпредставление. ЕслиnewSubviews
nil
, если у какого-либо из его элементов есть суперпредставление кроме, или содержит дублированные представления, илиnil
или получатель, исключение недействительного аргумента выдается.Обсуждение
Используя этот метод Вы можете: переупорядочьте существующие подпредставления получателя, добавьте или удалите подпредставления в массе, замените все подпредставления получателя с новым набором подпредставлений или удалите подпредставления всего получателя.
Поданный допустимый массив представлений
newSubviews
,setSubviews:
выполняет любую требуемую сортировку массива подпредставлений, а также отправку любогоaddSubview:
иremoveFromSuperview
сообщения по мере необходимости для отъезда получателя с требуемым новым массивом подпредставлений. Любой элементnewSubviews
это уже не подпредставление получателя, добавляется. Любой элемент существующего представленияsubviews
массив, который не находится вnewSubviews
удален. И любые представления, которые находятся в обоихsubviews
иnewSubviews
перемещены в массив подпредставлений по мере необходимости, не будучи удаленным и повторно добавлены.Этот метод отмечает затронутое представление и области окна как нуждающийся в дисплее.
Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.5 и позже.
-
подпредставления подпредставления
СвойствоМассив представлений встраивается в текущее представление.
Обсуждение
Этот массив содержит нуль или больше
NSView
объекты, представляющие представления, встроенные в содержание текущего представления. Текущее представление действует как суперпредставление для каждого подпредставления. Порядок подпредставлений можно рассмотреть как являющийся наоборот, но это не подразумевает поведение получения и аннулирование.При загрузке представления из пера или файла раскадровки, порядок подпредставлений определяется пером или самим файлом раскадровки и обычно соответствует порядку, в котором были добавлены представления. Точно так же при добавлении подпредставлений программно, порядок основывается на порядке, в котором Вы добавили их.
При выполнении операций теста хита на представлении необходимо запустить при последнем представлении в этом массиве и работе назад.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Объект окна получателя, если это установлено в окне. (только для чтения)
Объявление
Swift
unowned(unsafe) var window: NSWindow? { get }
Objective C
@property(readonly, assign) NSWindow *window
Обсуждение
Значение этого свойства
nil
если представление в настоящее время не устанавливается в окне.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Добавляет представление к подпредставлениям получателя, таким образом, оно выведено на экран выше его одноуровневых элементов.
Параметры
aView
Представление для добавления к получателю как подпредставление.
Обсуждение
Этот метод также устанавливает получатель как следующего респондента
aView
.Получатель сохраняет
aView
. Если Вы используетеremoveFromSuperview
удалитьaView
от иерархии представления,aView
выпущен. Если Вы хотите продолжить использоватьaView
после удаления его от иерархии представления (если, например, Вы подкачиваете посредством многих представлений), необходимо сохранить его перед вызовомremoveFromSuperview
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Вставляет представление среди подпредставлений получателя, таким образом, оно сразу выведено на экран выше или ниже другого представления.
Объявление
Swift
func addSubview(_
aView
: NSView, positionedplace
: NSWindowOrderingMode, relativeTootherView
: NSView?)Objective C
- (void)addSubview:(NSView *)
aView
positioned:(NSWindowOrderingMode)place
relativeTo:(NSView *)otherView
Параметры
aView
Объект представления добавить к получателю как подпредставление.
place
enum
постоянное указание позицииaView
относительноotherView
. Допустимые значенияNSWindowAbove
илиNSWindowBelow
.otherView
Другое представление
aView
должен быть расположен относительно. ЕслиotherView
nil
(или не подпредставление получателя),aView
добавляется выше или ниже всех его новых одноуровневых элементов.Обсуждение
Этот метод также устанавливает получатель как следующего респондента
aView
.Получатель сохраняет
aView
. Если Вы используетеremoveFromSuperview
удалитьaView
от иерархии представления,aView
выпущен. Если Вы хотите продолжить использоватьaView
после удаления его от иерархии представления (если, например, Вы подкачиваете посредством многих представлений), необходимо сохранить его перед вызовомremoveFromSuperview
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– addSubview:
подпредставления
– removeFromSuperview
setNextResponder:
(NSResponder
) -
Переопределенный подклассами для выполнения дополнительных действий, когда подпредставления добавляются к получателю.
Объявление
Swift
func didAddSubview(_
subview
: NSView)Objective C
- (void)didAddSubview:(NSView *)
subview
Параметры
subview
Представление, добавленное как подпредставление.
Обсуждение
Этот метод вызывается
addSubview:
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Расцепляет получатель от его суперпредставления и его окна, удаляет его из цепочки респондента и лишает законной силы ее прямоугольники курсора.
Объявление
Swift
func removeFromSuperview()
Objective C
- (void)removeFromSuperview
Обсуждение
Получатель также выпущен; если Вы планируете снова использовать его, несомненно, сохранят его прежде, чем отправить это сообщение и выпустить его столь же надлежащий при добавлении его как подпредставление другого
NSView
.Вызов этого метода удаляет любые ограничения, относящиеся к представлению, которое Вы удаляете, или относящемуся к любому представлению в поддереве представления, которое Вы удаляете.
Никогда не вызывайте этот метод во время дисплея.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Расцепляет получатель от его суперпредставления и его окна и удаляет его из цепочки респондента, но не лишает законной силы ее прямоугольники курсора для порождения перерисовки.
Объявление
Swift
func removeFromSuperviewWithoutNeedingDisplay()
Objective C
- (void)removeFromSuperviewWithoutNeedingDisplay
Обсуждение
Получатель также выпущен; если Вы планируете снова использовать его, несомненно, сохранят его прежде, чем отправить это сообщение и выпустить его столь же надлежащий при добавлении его как подпредставление другого представления.
В отличие от его дубликата,
removeFromSuperview
, этот метод может быть безопасно вызван во время дисплея.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Замены одно из подпредставлений получателя с другим представлением.
Объявление
Objective C
- (void)replaceSubview:(NSView *)
oldView
with:(NSView *)newView
Параметры
oldView
Представление, которое будет заменено
newView
. Может не бытьnil
.newView
Представление для замены
oldView
. Может не бытьnil
.Обсуждение
Этот метод ничего не делает если
oldView
не подпредставление получателя.Ни один
oldView
ниnewView
может бытьnil
, если любой из этих параметров, и поведение не определеноnil
.Этот метод причины
oldView
быть выпущенным; если Вы планируете снова использовать его, несомненно, сохранят его прежде, чем отправить это сообщение и выпустить его столь же надлежащий при добавлении его как подпредставление другого NSView.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты
YES
true
если получатель является подпредставлением высказанного мнения или если это идентично тому представлению; иначе, это возвращаетсяNO
false
.Объявление
Swift
func isDescendantOf(_
aView
: NSView) -> BoolObjective C
- (BOOL)isDescendantOf:(NSView *)
aView
Параметры
aView
Представление для тестирования на отношение подпредставления в иерархии представления.
Обсуждение
Возвраты метода
YES
true
если получатель является или непосредственным или удаленным подпредставлениемaView
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
opaqueAncestor opaqueAncestor
СвойствоСамый близкий непрозрачный наследователь представления, который мог бы быть самим представлением. (только для чтения)
Объявление
Swift
unowned(unsafe) var opaqueAncestor: NSView? { get }
Objective C
@property(readonly, assign) NSView *opaqueAncestor
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает самого близкого наследователя, совместно использованного получателем и высказанным мнением.
Объявление
Objective C
- (NSView *)ancestorSharedWithView:(NSView *)
aView
Параметры
aView
Представление для тестирования (вместе с получателем) для самого близкого совместно используемого наследователя.
Возвращаемое значение
Самый близкий наследователь или
nil
если нет такого объекта. Возвратыself
еслиaView
идентично получателю.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Упорядочивает непосредственные подпредставления получателя с помощью указанной функции компаратора.
Объявление
Swift
func sortSubviewsUsingFunction(_
compare
: CFunctionPointer<((AnyObject!, AnyObject!, UnsafeMutablePointer<Void>) -> NSComparisonResult)>, contextcontext
: UnsafeMutablePointer<Void>)Objective C
- (void)sortSubviewsUsingFunction:(NSComparisonResult (*)(id, id, void *))
compare
context:(void *)context
Параметры
compare
Указатель на функцию компаратора. Эта функция должна взять в качестве параметров два подпредставления, которые будут упорядочены и контекстные данные (предоставленный в
context
то, которое может быть произвольными данными, раньше помогало в сравнении. Функция компаратора должна возвратитьсяNSOrderedAscending
если первое подпредставление должно быть упорядочено ниже,NSOrderedDescending
если второе подпредставление должно быть упорядочено ниже, иNSOrderedSame
если их упорядочивание не важно.context
Произвольные данные, которые могли бы помочь компаратору функционировать
compare
в его решениях.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
sortedArrayUsingFunction:context:
(NSArray
) -
Сообщает получателю, что его суперпредставление изменилось (возможно к
nil
).Объявление
Swift
func viewDidMoveToSuperview()
Objective C
- (void)viewDidMoveToSuperview
Обсуждение
Реализация по умолчанию ничего не делает; подклассы могут переопределить этот метод для выполнения независимо от того, что действия необходимы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Сообщает получателю, что он был добавлен к новой иерархии представления.
Объявление
Swift
func viewDidMoveToWindow()
Objective C
- (void)viewDidMoveToWindow
Обсуждение
Реализация по умолчанию ничего не делает; подклассы могут переопределить этот метод для выполнения независимо от того, что действия необходимы.
Если представление
window
свойствоnil
, тот результат показывает, что представление было удалено из его окна и в настоящее время не находится ни в каком окне.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Сообщает получателю, что его суперпредставление собирается измениться на указанное суперпредставление (который может быть
nil
).Объявление
Swift
func viewWillMoveToSuperview(_
newSuperview
: NSView?)Objective C
- (void)viewWillMoveToSuperview:(NSView *)
newSuperview
Параметры
newSuperview
Объект представления, который будет новым суперпредставлением получателя.
Обсуждение
Подклассы могут переопределить этот метод для выполнения независимо от того, что действия необходимы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Сообщает получателю, что он добавляется к иерархии представления указанного объекта окна (который может быть
nil
).Объявление
Swift
func viewWillMoveToWindow(_
newWindow
: NSWindow?)Objective C
- (void)viewWillMoveToWindow:(NSWindow *)
newWindow
Параметры
newWindow
Объект окна, который будет в корне новой иерархии представления получателя. Если представление удаляется из окна и нет никакого нового окна, этот параметр
nil
.Обсуждение
Когда окно представления изменяется, AppKit вызывает этот метод. Это также вызывает его в случаях, где представление остается в том же окне, но его позиции в его изменениях иерархии представления. Представление, переместившееся также, вызывает этот метод на всех его подпредставлениях, давая каждому из них шанс реагировать на изменение.
Подклассы могут переопределить этот метод для выполнения независимо от того, что действия необходимы. Например, когда окно освобождено, можно использовать этот метод для удаления наблюдателей уведомления и привязки, связанной с представлением.
Когда окно освобождено, AppKit вызывает этот метод для каждого представления в окне, передавая
nil
дляnewWindow
параметр. AppKit не обязательно вызывает этот метод при закрытии окна, все же. Закрытие окна обычно просто скрывает окно. Закрывшие окна освобождены только если ихisReleasedWhenClosed
возвраты методаYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Переопределенный подклассами для выполнения дополнительных действий, прежде чем подпредставления удалены из получателя.
Объявление
Swift
func willRemoveSubview(_
subview
: NSView)Objective C
- (void)willRemoveSubview:(NSView *)
subview
Параметры
subview
Подпредставление, которое будет удалено.
Обсуждение
Этот метод вызывается когда
subview
получает aremoveFromSuperview
сообщение илиsubview
удален из получателя вследствие его добавляемый к другому представлению сaddSubview:
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
enclosingMenuItem enclosingMenuItem
СвойствоПункт меню, содержащий представление или любое из его суперпредставлений в иерархии представления. (только для чтения)
Объявление
Swift
var enclosingMenuItem: NSMenuItem? { get }
Objective C
@property(readonly, strong) NSMenuItem *enclosingMenuItem
Обсуждение
Значение этого свойства
nil
если представление не находится в пункте меню.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Прямоугольник кадра получателя, определяющий его позицию и размер в системе координат его суперпредставления.
Обсуждение
Изменение значения этого свойства меняет местоположение и изменяет размеры получателя в системе координат его суперпредставления. Изменение кадра не отмечает представление как бывший должный быть выведенным на экран. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Если Ваше представление не использует пользовательский прямоугольник границ, этот метод также устанавливает границы представления для соответствия размера нового кадра. Можно указать пользовательский прямоугольник границ путем изменения
bounds
свойство или путем вызоваsetBoundsOrigin:
,setBoundsRotation:
, илиsetBoundsSize:
метод явно. После того, как набор, представление создает внутреннее преобразование для преобразования от координат кадра до координат границ. Пока отношение ширины к высоте этих двух систем координат остается тем же, Ваше содержание кажется нормальным. Если отношения отличаются, Ваше содержание может казаться скошенным.Прямоугольник кадра может быть повернут относительно системы координат его суперпредставления. Для получения дополнительной информации посмотрите
frameRotation
свойство.Изменение значения этого свойства приводит к регистрации
NSViewFrameDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsFrameChangedNotifications:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает источник прямоугольника кадра получателя к указанной точке, эффективно меняя местоположение его в ее суперпредставлении.
Объявление
Swift
func setFrameOrigin(_
newOrigin
: NSPoint)Objective C
- (void)setFrameOrigin:(NSPoint)
newOrigin
Параметры
newOrigin
Точка, которая является новым источником кадра получателя.
Обсуждение
Изменение кадра не отмечает представление как бывший должный быть выведенным на экран. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Изменение источника кадра приводит к регистрации
NSViewFrameDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsFrameChangedNotifications:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает размер прямоугольника кадра получателя к указанным размерностям, изменяя размеры его в его суперпредставлении, не влияя на его систему координат.
Объявление
Swift
func setFrameSize(_
newSize
: NSSize)Objective C
- (void)setFrameSize:(NSSize)
newSize
Параметры
newSize
NSSize
структура, указывающая новую высоту и ширину прямоугольника кадра.Обсуждение
Изменение кадра не отмечает представление как бывший должный быть выведенным на экран. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Изменение типа телосложения приводит к регистрации
NSViewFrameDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsFrameChangedNotifications:
метод.В версии 10.4 OS X и позже, можно переопределить этот метод к сохранению содержания поддержки во время живого изменения размеров. В Вашей переопределенной реализации включайте некоторый условный код, который будет выполняться только во время живого, изменяют размеры работы. Ваш код должен лишить законной силы любые части Вашего представления, которое должно быть перерисовано.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
frameRotation frameRotation
СвойствоУгол вращения, измеренный в градусах, применился к прямоугольнику кадра представления относительно системы координат своего суперпредставления.
Обсуждение
Положительные значения указывают против часовой стрелки вращение. Отрицательные величины указывают по часовой стрелке вращение. Вращение выполняется вокруг источника прямоугольника кадра. Изменение значения этого свойства не отмечает представление как бывший должный быть выведенным на экран. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Изменение вращения кадра оценивает результаты в регистрации
NSViewFrameDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsFrameChangedNotifications:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Прямоугольник границ получателя, выражающий его расположение и размер в его собственной системе координат.
Обсуждение
По умолчанию это свойство содержит прямоугольник, источник которого (0, 0) и чей размер соответствует размер прямоугольника кадра получателя (измеренный в точках). В OS X v10.5 и позже, если получатель представляется в контексте графики OpenGL (использующий
NSOpenGLContext
объект), источник границ по умолчанию все еще (0, 0), но размер границ по умолчанию измеряется в пикселях вместо точек. Таким образом, для масштабных коэффициентов пространства пользователя кроме 1,0, размер по умолчанию прямоугольника границ может быть больше или меньшим, чем размер по умолчанию прямоугольника кадра при рисовании с OpenGL.При явном изменении источника или размера прямоугольника границ это свойство сохраняет прямоугольник, который Вы устанавливаете. Если Вы добавляете фактор вращения к представлению, однако, что фактор также отражается в возвращенном прямоугольнике границ. Можно определить, имеет ли фактор вращения силу путем получения значения
boundsRotation
свойство.Изменение границ не отмечает представление как бывший должный быть выведенным на экран. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление. После изменения прямоугольника границ представление создает внутреннее преобразование (или добавляет эти изменения в существующем внутреннем преобразовании) преобразовать от координат кадра до координат границ в Вашем представлении. Пока отношение ширины к высоте этих двух систем координат остается тем же, Ваше содержание кажется нормальным. Если отношения отличаются, Ваше содержание может казаться скошенным.Изменение значения этого свойства приводит к регистрации
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsBoundsChangedNotifications:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает источник прямоугольника границ получателя к указанной точке,
Объявление
Swift
func setBoundsOrigin(_
newOrigin
: NSPoint)Objective C
- (void)setBoundsOrigin:(NSPoint)
newOrigin
Параметры
newOrigin
Точка, указывающая новый источник границ получателя.
Обсуждение
В установке нового источника границ этот метод эффективно смещает систему координат получателя так
newOrigin
находится в источнике прямоугольника кадра получателя. Это не восстанавливает изображение получателя и не отмечает его как нуждающийся в дисплее. ВызовитеsetNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Этот метод отправляет
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsBoundsChangedNotifications:
метод.После вызова этого метода,
NSView
создает внутреннее преобразование (или добавляет эти изменения в существующем внутреннем преобразовании) преобразовать от координат кадра до координат границ в Вашем представлении. Пока отношение ширины к высоте этих двух систем координат остается тем же, Ваше содержание кажется нормальным. Если отношения отличаются, Ваше содержание может казаться скошенным.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает размер прямоугольника границ получателя к указанным размерностям, обратно пропорционально масштабируя его систему координат относительно его прямоугольника кадра.
Объявление
Swift
func setBoundsSize(_
newSize
: NSSize)Objective C
- (void)setBoundsSize:(NSSize)
newSize
Параметры
newSize
NSSize
структура, указывающая новую ширину и высоту прямоугольника границ получателя.Обсуждение
Например, объект представления с типом телосложения (100.0, 100.0) и размер границ (200.0, 100.0) рисует вдвое менее широкий вдоль оси X. Этот метод не восстанавливает изображение получателя и не отмечает его как нуждающийся в дисплее. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Этот метод отправляет
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsBoundsChangedNotifications:
метод.После вызова этого метода,
NSView
создает внутреннее преобразование (или добавляет эти изменения в существующем внутреннем преобразовании) преобразовать от координат кадра до координат границ в Вашем представлении. Пока отношение ширины к высоте этих двух систем координат остается тем же, Ваше содержание кажется нормальным. Если отношения отличаются, Ваше содержание может казаться скошенным.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
boundsRotation boundsRotation
СвойствоУгол вращения, измеренный в градусах, применился к прямоугольнику границ представления относительно своего прямоугольника кадра.
Обсуждение
Положительные значения указывают против часовой стрелки вращение. Отрицательные величины указывают по часовой стрелке вращение. Вращение выполняется вокруг источника системы координат, (0.0, 0.0), который не должен совпадать с тем из прямоугольника кадра или прямоугольника границ. Изменение значения этого свойства не восстанавливает изображение представления и не отмечает его как нуждающийся в дисплее. Вызовите
setNeedsDisplay:
метод, когда Вы хотите, чтобы было восстановлено представление.Вращение границ влияет на ориентацию получения в прямоугольнике кадра объекта представления, но не ориентацию самого прямоугольника кадра. Кроме того, для повернутого прямоугольника границ, чтобы включить все видимые области его объекта представления — т.е. гарантировать покрытие по прямоугольнику кадра — это должно также содержать некоторые области, которые не видимы. Это может заставить ненужное получение требоваться, который может влиять на производительность. Может быть лучше во многих случаях повернуть систему координат в
drawRect:
метод, а не использование этот метод.После изменения значения этого свойства представление создает внутреннее преобразование (или добавляет эти изменения в существующем внутреннем преобразовании) преобразовать от координат кадра до координат границ в Вашем представлении. Пока отношение ширины к высоте этих двух систем координат остается тем же, Ваше содержание кажется нормальным. Если отношения отличаются, Ваше содержание может казаться скошенным.
Изменение значения этого свойства приводит к регистрации
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если представление сконфигурировано, чтобы сделать так. Можно сконфигурировать это поведение путем вызоваsetPostsBoundsChangedNotifications:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
wantsLayer wantsLayer
СвойствоБулево значение, указывающее, использует ли представление уровень в качестве своего запоминающего устройства.
Объявление
Swift
var wantsLayer: Bool
Objective C
@property BOOL wantsLayer
Обсуждение
Установка значения этого свойства к
YES
true
превращает представление в поддержанное уровнем представление — т.е. представление использует aCALayer
объект управлять его представленным содержанием. Создание поддержанного уровнем представления неявно заставляет всю иерархию представления при том представлении становиться поддержанной уровнем. Таким образом представление и все его подпредставления (включая подпредставления подпредставлений) становятся поддержанными уровнем. Значение по умолчанию этого свойстваNO
false
.В поддержанном уровнем представлении любое получение, сделанное представлением, кэшируется к объекту нижележащего слоя. Этим кэшируемым содержанием можно тогда управлять способами, которые более производительны, чем перерисовка содержания представления явно. AppKit автоматически создает объект нижележащего слоя (использование
makeBackingLayer
метод) и дескрипторы кэширование содержания представления. ЕслиwantsUpdateLayer
возвраты методаNO
false
, Вы не должны взаимодействовать с объектом нижележащего слоя непосредственно. Вместо этого используйте методы этого класса для внесения любых изменений в представление и его уровень. ЕслиwantsUpdateLayer
возвратыYES
true
, это является приемлемым (и надлежащим) изменить уровень в представленииupdateLayer
метод.Для поддержанных уровнем представлений можно сгладить иерархию слоев путем установки
canDrawSubviewsIntoLayer
свойство кYES
true
. Для препятствования подпредставлению выравнивание его содержания на уровень этого представления явно установите значение подпредставленияwantsLayer
свойство кYES
true
.В дополнение к созданию поддержанного уровнем представления можно создать размещающее уровень представление путем присвоения уровня непосредственно представлению
layer
свойство. В размещающем уровень представлении Вы ответственны за управление уровнем представления. Для создания размещающего уровень представления необходимо установитьlayer
свойство сначала и затем набор это свойство кYES
true
. Порядок, в котором Вы устанавливаете значения этих свойств, крайне важен.В размещающем уровень представлении не полагайтесь на представление для рисования. Точно так же не добавляйте подпредставления к размещающему уровень представлению. Корневой слой — т.е. уровень Вы устанавливаете использование
layer
свойство — становится корневым слоем дерева уровня. Любые манипуляции тем деревом уровня должны быть сделаны с помощью Базовых интерфейсов Анимации. Вы все еще используете представление для обработки событий от нажатия мыши и событий клавиатуры, но получение должно быть обработано Базовой Анимацией.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
wantsUpdateLayer wantsUpdateLayer
СвойствоБулево значение, указывающее, который, таща путь представление берет при обновлении его содержания. (только для чтения)
Объявление
Swift
var wantsUpdateLayer: Bool { get }
Objective C
@property(readonly) BOOL wantsUpdateLayer
Обсуждение
Представление может обновить свое содержание с помощью одного из двух методов. Это может нарисовать то содержание с помощью
drawRect:
метод или это могут изменить свой объект нижележащего слоя непосредственно. Во время цикла обновления представления каждое грязное представление вызывает этот метод на себе для определения который метод использовать. Реализация по умолчанию этого метода возвратыNO
false
, который заставляет представление использоватьdrawRect:
метод.Если Ваше представление поддерживается уровнем и обновляет себя путем изменения его уровня, переопределите это свойство и измените возвращаемое значение на
YES
true
. Изменение уровня значительно быстрее, чем перерисовка использования содержания уровняdrawRect:
. Если Вы переопределяете это свойство, чтобы бытьYES
true
, необходимо также переопределитьupdateLayer
метод Вашего представления и использования это для внесения изменений в уровень. Не изменяйте свой уровень в Вашей реализации этого свойства. Ваша реализация должна возвратитьсяYES
true
илиNO
false
быстро и не выполняют другие задачи.Если
canDrawSubviewsIntoLayer
свойство установлено вYES
true
, представление игнорирует значение, возвращенное этим методом. Вместо этого представление всегда используетdrawRect:
метод для рисования его содержания.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.8 и позже.
См. также
-
Базовый Слой анимации, который представление использует в качестве его запоминающего устройства.
Обсуждение
Используйте это свойство, чтобы установить или связать уровень с представлением, если таковые имеются. Когда установлено, уровень служит запоминающим устройством для содержания представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Создает уровень поддержки представления.
Возвращаемое значение
Уровень для использования в качестве уровня поддержки представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
Политика размещения содержания текущего слоя.
Объявление
Swift
var layerContentsPlacement: NSViewLayerContentsPlacement
Objective C
@property NSViewLayerContentsPlacement layerContentsPlacement
Обсуждение
Размещение содержания определяет, как отступающий уровень, существующий кэшируемый довольный, изображение будет отображено на уровень, поскольку изменен уровень. Это походит, и подкрепленный,
contentsGravity
свойствоCALayer
класс. Значение по умолчанию этого свойстваNSViewLayerContentsPlacementScaleAxesIndependently
. Для списка поддерживаемых значений посмотрите NSViewLayerContentsPlacement.Для получения дополнительной информации о влиянии производительности этого свойства посмотрите
layerContentsRedrawPolicy
свойство.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
Содержание перерисовывает политику для уровня представления.
Объявление
Swift
var layerContentsRedrawPolicy: NSViewLayerContentsRedrawPolicy
Objective C
@property NSViewLayerContentsRedrawPolicy layerContentsRedrawPolicy
Обсуждение
layerContentsRedrawPolicy
иlayerContentsPlacement
настройки могут оказать значительные влияния на производительность. Если Вы не должны перерисовывать свое представление во время каждого цикла обновления кадра, или если Вы готовы принять приближение промежуточного появления представления во время потенциально кратких анимаций в обмен на производительность анимации и преимущество гладкости, можно изменить значение этого свойства к одному из режимов, не требующему постоянной перерисовки. Когда Вы делаете так, необходимо также указать размещение содержания нужного слоя для представления. Размещение содержания определяет, как отступающий уровень, существующий кэшируемый довольный, изображение будет отображено на уровень, поскольку изменен уровень. Это походит, и подкрепленный,contentsGravity
свойствоCALayer
класс.Для представления, не имеющего никакого связанного уровня, или это было присвоено предоставленный разработчиками уровень (размещающее уровень представление) использование
layer
свойство, политика перерисовки содержания по умолчаниюNSViewLayerContentsRedrawNever
иlayerContentsPlacement
свойство установлено вNSViewLayerContentsPlacementScaleAxesIndependently
. Эти политики говорят AppKit не заменять содержание уровня и обеспечивать то же размещение содержания какkCAGravityResize
опция. Для поддержанного уровнем представления — т.е. представление, для которого AppKit создал уровень — AppKit, устанавливает политику перерисовки содержания вNSViewLayerContentsRedrawDuringViewResize
по умолчанию. Эта политика вынуждает содержание представления постоянно перерисовываться на уровень поддержки представления во время анимированного изменения размеров представления, производящего корректный, но не оптимальные результаты производительности.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
См. также
-
Булево значение, указывающее, включает ли представление содержание от своих подпредставлений на его собственный уровень.
Объявление
Swift
var canDrawSubviewsIntoLayer: Bool
Objective C
@property BOOL canDrawSubviewsIntoLayer
Обсуждение
Когда значение этого свойства
YES
true
, любые подпредставления, имеющие неявно создаваемый уровень — т.е. уровни, для которых Вы явно не устанавливалиwantsLayer
свойство кYES
true
— вовлеките их содержание в уровень текущего представления. Другими словами, подпредставления не получают собственный уровень. Вместо этого они вовлекают свое содержание в уровень родительского представления. Все представления, вовлеченные в работу, рисуют свое содержание с помощью ихdrawRect:
метод. Они не используютupdateLayer
метод для обновления их содержания уровня, даже еслиwantsUpdateLayer
свойство установлено вYES
true
.Используйте это свойство для выравнивания иерархии слоев для поддержанного уровнем представления и его подпредставлений. Выравнивание иерархии слоев сокращает количество уровней (и может сократить объем памяти), используемый Вашей иерархией представления. Сокращение количества уровней может быть более эффективным в ситуациях, где существует значительное перекрытие среди подпредставлений или где содержание представления и подпредставлений не изменяется значительно. Например, выравнивание иерархии сокращает потраченное составление композита количества времени Ваших представлений вместе. Не сглаживайте иерархию представления, если Вы планируете анимировать одно или более подпредставлений в той иерархии.
При изменении значения этого свойства текущее представление должно иметь расположенный на слое объект. Значение по умолчанию этого свойства
NO
false
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.9 и позже.
-
Булево значение, указывающее, фильтрует ли Изображение Ядра использования уровня представления и нуждается в незавершенном рендеринге.
Объявление
Swift
var layerUsesCoreImageFilters: Bool
Objective C
@property BOOL layerUsesCoreImageFilters
Обсуждение
Если Ваше представление использует пользовательский уровень, и Вы присвоили Базовое Изображение тому уровню непосредственно, необходимо установить это свойство в
YES
true
сообщить AppKit того факта. В OS X v10.9 и позже, AppKit предпочитает представлять деревья уровня из процесса, но не может сделать так, если какие-либо уровни имеют Базовые фильтры Изображения, присоединенные к ним. УказаниеYES
true
поскольку свойство позволяет AppKit знать, что это должно положить обратно рендеринг иерархии слоев в процесс Вашего приложения. Если значение этого свойстваNO
false
, добавление фильтра к уровню представления инициировало исключение.Вы не должны изменять это свойство при присвоении фильтров с помощью
backgroundFilters
,compositingFilter
, илиcontentFilters
свойства представления. Те методы автоматически позволяют AppKit знать, что он должен представить незавершенную иерархию слоев. Установите его, только если Вы устанавливаете фильтры на уровне непосредственно.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.9 и позже.
См. также
-
alphaValue alphaValue
СвойствоНепрозрачность представления.
Обсуждение
Это свойство содержит
opacity
значение от уровня представления. Приемлемый диапазон значений для этого свойства между0.0
(прозрачный) и1.0
(непрозрачный). Значение по умолчанию этого свойства1.0
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
frameCenterRotation frameCenterRotation
СвойствоУгол вращения представления вокруг центра его уровня.
Обсуждение
Это свойство содержит угол вращения кадра представления вокруг его центра. Если Вы изменили нижележащий слой
anchorPoint
свойство, результат установки этого свойства не определен.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
backgroundFilters backgroundFilters
СвойствоМассив Базового Изображения фильтрует для применения к фону представления.
Объявление
Swift
var backgroundFilters: [AnyObject]
Objective C
@property(copy) NSArray *backgroundFilters
Обсуждение
Это свойство содержит массив
CIFilter
объекты. Этот массив представляет фоновые фильтры, сохраненные вbackgroundFilters
свойство уровня представления. Если представление не имеет уровня, устанавливание значения этого свойства не имеет никакого эффекта.Значение по умолчанию этого свойства является пустым массивом.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
compositingFilter compositingFilter
СвойствоБазовый фильтр Изображения раньше составлял содержание представления с его фоном.
Объявление
Swift
var compositingFilter: CIFilter?
Objective C
@property(strong) CIFilter *compositingFilter
Обсуждение
Это свойство содержит составляющий композит фильтр, сохраненный в
compositingFilter
свойство уровня представления. Если представление не имеет уровня, устанавливание значения этого свойства не имеет никакого эффекта.Значение по умолчанию этого свойства
nil
, который заставляет содержание быть представленным без любых специальных эффектов составления композита.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
contentFilters contentFilters
СвойствоМассив Базового Изображения фильтрует для применения к содержанию представления и его подуровней.
Объявление
Swift
var contentFilters: [AnyObject]
Objective C
@property(copy) NSArray *contentFilters
Обсуждение
Это свойство содержит массив
CIFilter
объекты. Этот массив представляет фильтры, сохраненные вfilters
свойство уровня представления. Если представление не имеет уровня, устанавливание значения этого свойства не имеет никакого эффекта.Значение по умолчанию этого свойства является пустым массивом.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Тень, выведенная на экран под представлением.
Возвращаемое значение
Экземпляр
NSShadow
это создается с помощьюshadowColor
,shadowOffset
,shadowOpacity
иshadowRadius
свойства уровня получателя.Обсуждение
Значение по умолчанию этого свойства обычно
nil
. Когда Вы конфигурируете любое из связанных с тенью свойств на уровне представления, такой какshadowColor
,shadowOffset
,shadowOpacity
илиshadowRadius
свойства, это свойство содержитNSShadow
объект, инкапсулирующий ту информацию. Присвоение нового теневого объекта к этому наборы свойств соответствующие связанные с тенью свойства на уровне представления.Если представление не имеет уровня, устанавливание значения этого свойства не имеет никакого эффекта.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Обновляет содержание представления путем изменения его нижележащего слоя.
Объявление
Swift
func updateLayer()
Objective C
- (void)updateLayer
Обсуждение
Вы используете этот метод для оптимизации рендеринга представления в ситуациях, где можно представлять содержание представлений полностью с помощью расположенного на слое объекта. Если Ваше представление
wantsUpdateLayer
свойствоYES
true
, представление вызывает этот метод вместоdrawRect:
во время представления обновляют цикл. Пользовательские представления могут переопределить этот метод и использовать его для изменения свойств объекта нижележащего слоя. Изменение свойств слоя является намного более эффективным способом обновить Ваше представление, чем перерисовывает его содержание каждый раз, когда что-то изменяется.Когда Вы захотите обновить содержание своего уровня, отметьте представление как грязное путем вызова
setNeedsDisplay:
метод со значениемYES
true
. Выполнение так добавляет представление к списку представлений, которые должны быть обновлены во время следующего цикла обновления. Во время того цикла обновления этот метод вызывают еслиwantsUpdateLayer
свойство тихоYES
true
.Ваша реализация этого метода не должна вызывать
super
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.8 и позже.
См. также
-
Переопределенный подклассами для рисования изображения получателя в указанном прямоугольнике.
Параметры
dirtyRect
Прямоугольник, определяющий часть представления, требующего перерисовки. Этот прямоугольник обычно представляет часть представления, требующего обновления. Когда быстро реагирующая прокрутка включена, этот прямоугольник может также представлять невидимую часть представления, что AppKit хочет кэшироваться.
Обсуждение
Используйте этот метод для рисования указанной части содержания представления. Ваша реализация этого метода должна быть максимально быстро и действительно как можно меньше работает.
dirtyRect
параметр помогает Вам достигнуть лучшей производительности путем указания части представления, которое должно быть нарисовано. Необходимо всегда ограничивать получение содержанием в этом прямоугольнике. Для еще лучшей производительности можно вызватьgetRectsBeingDrawn:count:
метод и использование список прямоугольников, возвращенных тем методом для ограничения получения еще больше. Можно также использоватьneedsToDrawRect:
тест метода, должны ли быть нарисованы объекты в определенном прямоугольнике.Реализация по умолчанию ничего не делает. Подклассы должны переопределить этот метод, если они делают пользовательское получение. До вызова этого метода AppKit создает надлежащий контекст получения и конфигурирует его для рисования к представлению; Вы не должны конфигурировать контекст получения сами. Если Ваше приложение управляет содержанием с помощью своего расположенного на слое объекта вместо этого, используйте
updateLayer
метод для обновления уровня вместо того, чтобы переопределить этот метод.Если Ваше пользовательское представление является прямым
NSView
подкласс, Вы не должны вызыватьsuper
. Для всех других представлений вызватьsuper
в некоторый момент в Вашей реализации так, чтобы родительский класс мог выполнить любое дополнительное получение.Для получения информации о том, как нарисовать в Вашем приложении, посмотрите, что Какао Рисует Руководство.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Булево значение, указывающее, приведут ли команды рисования к каким-либо результатам. (только для чтения)
Объявление
Swift
var canDraw: Bool { get }
Objective C
@property(readonly) BOOL canDraw
Обсуждение
Значение этого свойства
YES
true
когда получение приводит к ожидаемым результатам. Объект представления может нарисовать на экране, если он не скрыт, он присоединен к иерархии представления в окне (NSWindow
), и окно имеет соответствующее устройство окна. Объект представления может также нарисовать во время печати, если это - потомок распечатываемого представления.Проверьте значение этого свойства прежде, чем попытаться вызвать получение к определенному контексту. Например, если значение этого свойства
NO
false
, не вызыватьlockFocus
или действительно выпустите любые команды рисования от представления. Вы не должны проверять, может ли получение произойти при вызовеdisplay
метод или любой из его связанных методов. Методы дисплея выполняют надлежащие проверки прежде, чем попросить, чтобы представление нарисовало себя.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
canDrawConcurrently canDrawConcurrently
СвойствоБулево значение, указывающее, может ли представление нарисовать свое содержание на фоновом потоке.
Объявление
Swift
var canDrawConcurrently: Bool
Objective C
@property BOOL canDrawConcurrently
Обсуждение
Если Ваше представление
drawRect:
реализация может нарисовать безопасно на фоновом потоке, установить это свойство вYES
true
. Выполнение так предоставляет AppKit возможность выполнить код для прорисовки Вашего представления от основного потока приложения, который может улучшить производительность. Окно представления должно также иметьallowsConcurrentViewDrawing
набор свойств кYES
true
(значение по умолчанию) для потокового получения представления для появления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
visibleRect visibleRect
СвойствоЧасть представления, не отсекающегося его суперпредставлениями. (только для чтения)
Обсуждение
Видимость, как отражено этим свойством, не составляет, перекрывают ли другое представление или объекты окна текущее представление или установлено ли текущее представление в окне вообще. Это значение этого свойства
NSZeroRect
если эффективно скрыто текущее представление.Во время работы печати видимый прямоугольник далее отсекается к отображаемой странице.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
скрытый
isVisible
(NSWindow)documentVisibleRect
(NSScrollView)documentVisibleRect
(NSClipView) -
Возвраты косвенно список неперекрывающихся прямоугольников, определяющих область получатель, просят подойти к концу
drawRect:
.Объявление
Параметры
rects
По возврату, содержит список неперекрывающихся прямоугольных областей определения, которые будут нарисованы в. Прямоугольники возвратились в
rects
находятся в координатном пространстве получателя.count
По возврату, числу прямоугольников в
rects
список.Обсуждение
Реализация
drawRect:
может использовать эту информацию для тестирования или объекты, или области в представлении пересекаются с прямоугольниками в списке, и таким образом избегают ненужного получения, которое было бы полностью отсечено далеко.needsToDrawRect:
метод дает Вам удобный способ протестировать отдельные объекты на пересечение с областью, нарисованной вdrawRect:
. Однако можно хотеть получить и непосредственно проверить прямоугольный список, если это - более эффективный способ выполнить перекрестное тестирование.Необходимо отправить это сообщение только из a
drawRect:
реализация.aRect
параметрdrawRect:
прямоугольник, включающий возвращенный список прямоугольников; можно использовать его в начальной передаче для отклонения объектов, которые являются ясно вне области, которая будет нарисована.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
См. также
-
Возвраты, пересекает ли указанный прямоугольник какую-либо часть области, которую получатель просят нарисовать.
Объявление
Swift
func needsToDrawRect(_
aRect
: NSRect) -> BoolObjective C
- (BOOL)needsToDrawRect:(NSRect)
aRect
Параметры
aRect
Прямоугольник, определяющий область получателя.
Обсуждение
Вы обычно отправляете это сообщение из a
drawRect:
реализация. Это дает Вам удобный способ определить, ли какая-либо часть данного графического объекта, возможно, должна была бы быть нарисована. Это оптимизировано для эффективного отклонения любого прямоугольника, находящегося вне ограничительной рамки области, которую получатель просят подойти к концуdrawRect:
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
-
wantsDefaultClipping wantsDefaultClipping
СвойствоБулево значение, указывающее, имеет ли отсечение AppKit по умолчанию поведения силу. (только для чтения)
Объявление
Swift
var wantsDefaultClipping: Bool { get }
Objective C
@property(readonly) BOOL wantsDefaultClipping
Возвращаемое значение
YES
true
если отсечение по умолчанию имеет силу,NO
false
иначе. По умолчанию, этот метод возвратыYES
true
.Обсуждение
Значение по умолчанию этого свойства
YES
true
. Когда значение этого свойстваYES
true
, AppKit устанавливает текущую область отсечения в границы представления до вызова что представлениеdrawRect:
метод. Подклассы могут переопределить это свойство и возвратNO
false
подавить это поведение отсечения значения по умолчанию. Вы могли бы сделать это для предотвращения стоимости установки, осуществления и очистки траектории отсечения. Если Вы действительно изменяете значение наNO
false
, Вы ответственны за то, что сделали Ваше собственное отсечение или ограничение получения соответственно. Отказ сделать так мог представление для повреждения содержания других представлений в окне.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
-
Возвращает объект растрового представления, подходящий для кэширования указанной части получателя.
Объявление
Swift
func bitmapImageRepForCachingDisplayInRect(_
aRect
: NSRect) -> NSBitmapImageRep?Objective C
- (NSBitmapImageRep *)bitmapImageRepForCachingDisplayInRect:(NSRect)
aRect
Параметры
aRect
Прямоугольник, определяющий область получателя, который будет кэшироваться.
Возвращаемое значение
Автовыпущенный
NSBitmapImageRep
объект илиnil
если не мог бы быть создан объект.Обсуждение
Передача видимого прямоугольника получателя (
[self visibleRect]
) возвращает битовый массив, подходящий для кэширования текущего содержания представления, включая всех его потомков.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Рисует указанную область получателя и его потомков, в предоставленный объект растрового представления.
Объявление
Swift
func cacheDisplayInRect(_
rect
: NSRect, toBitmapImageRepbitmapImageRep
: NSBitmapImageRep)Objective C
- (void)cacheDisplayInRect:(NSRect)
rect
toBitmapImageRep:(NSBitmapImageRep *)bitmapImageRep
Параметры
rect
Прямоугольник, определяющий область, которая будет вовлечена
bimapImageRep
.bitmapImageRep
NSBitmapImageRep
объект. Для совместимости формата пикселя,bitmapImageRep
должен был быть получен изbitmapImageRepForCachingDisplayInRect:
.Обсуждение
Вы ответственны за инициализацию битового массива к желаемой конфигурации прежде, чем вызвать этот метод. Однако когда-то инициализированный, можно снова использовать тот же битовый массив многократно для обновления кэшируемой копии содержания представления.
Битовый массив, произведенный этим методом, прозрачен (т.е. имеет альфа-значение 0) везде, где получатель и его потомки не рисуют содержания.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Этот метод действия открывает панель Print, и если пользователь выбирает опцию кроме отмены, распечатывает получатель и все его подпредставления к устройству, указанному в панели Print.
Объявление
Swift
func print(_
sender
: AnyObject?)Objective C
- (void)print:(id)
sender
Параметры
sender
Объект, отправивший сообщение.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Вызванный в начале каждой страницы, этот метод устанавливает систему координат так, чтобы область в границах получателя была переведена в указанное расположение..
Объявление
Параметры
aRect
Прямоугольник, определяющий область, которая будет переведена.
location
Точка, которая является конечной точкой перевода.
Обсуждение
Если Вы переопределяете этот метод, несомненно, вызовут реализацию суперкласса.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Данные EPS возвратов, рисующие область получателя в указанном прямоугольнике.
Объявление
Параметры
aRect
Прямоугольник, определяющий область.
Обсуждение
Эти данные могут быть помещены в
NSPasteboard
объект, записанный в файл или используемый для созданияNSImage
объект.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Данные PDF возвратов, рисующие область получателя в указанном прямоугольнике.
Объявление
Параметры
aRect
Прямоугольник, определяющий область.
Обсуждение
Эти данные могут быть помещены в
NSPasteboard
объект, записанный в файл или используемый для созданияNSImage
объект.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
printJobTitle printJobTitle
СвойствоДолжность печати представления. (только для чтения)
Объявление
Swift
var printJobTitle: String { get }
Objective C
@property(readonly, copy) NSString *printJobTitle
Обсуждение
Реализация по умолчанию сначала пробует окно
NSDocument
выведите на экран имя (displayName
), тогда заголовок окна.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
pageHeader pageHeader
СвойствоСтрока заголовка по умолчанию, включающая должность печати и дату. (только для чтения)
Объявление
Swift
@NSCopying var pageHeader: NSAttributedString { get }
Objective C
@property(readonly, copy) NSAttributedString *pageHeader
Обсуждение
Как правило, должность печати совпадает с заголовком окна. Печатаемый класс представления может переопределить это свойство для обеспечения его собственного содержания вместо значения по умолчанию. Вы не должны должны быть получать доступ к этому свойству непосредственно. Система печати получает доступ к нему один раз на страницу во время печати.
Заголовки сгенерированы, только если пользовательские значения по умолчанию содержат ключ
NSPrintHeaderAndFooter
со значениемYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
pageFooter pageFooter
СвойствоСтрока нижнего колонтитула по умолчанию, включающая текущий номер страницы и количество страницы. (только для чтения)
Объявление
Swift
@NSCopying var pageFooter: NSAttributedString { get }
Objective C
@property(readonly, copy) NSAttributedString *pageFooter
Обсуждение
Печатаемый класс представления может переопределить это свойство для замены его собственным содержанием вместо значения по умолчанию. Вы не должны должны быть получать доступ к значению этого свойства непосредственно. Система печати получает доступ к нему один раз на страницу во время печати.
Нижние колонтитулы сгенерированы, только если пользовательские значения по умолчанию содержат ключ
NSPrintHeaderAndFooter
со значениемYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Данные EPS записей, рисующие область получателя в указанном прямоугольнике на область монтажа.
Объявление
Swift
func writeEPSInsideRect(_
aRect
: NSRect, toPasteboardpboard
: NSPasteboard)Objective C
- (void)writeEPSInsideRect:(NSRect)
aRect
toPasteboard:(NSPasteboard *)pboard
Параметры
aRect
Прямоугольник, определяющий область.
pboard
Объект, представляющий область монтажа.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Данные PDF записей, рисующие область получателя в указанном прямоугольнике на область монтажа.
Объявление
Swift
func writePDFInsideRect(_
aRect
: NSRect, toPasteboardpboard
: NSPasteboard)Objective C
- (void)writePDFInsideRect:(NSRect)
aRect
toPasteboard:(NSPasteboard *)pboard
Параметры
aRect
Прямоугольник, определяющий область.
pboard
Объект, представляющий область монтажа.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Позволяет приложения, использующие средство разбиения на страницы Набора Приложения для рисования дополнительных меток на каждой логической странице.
Объявление
Swift
func drawPageBorderWithSize(_
borderSize
: NSSize)Objective C
- (void)drawPageBorderWithSize:(NSSize)
borderSize
Параметры
borderSize
NSSize
структура, определяющая логическую страницу.Обсуждение
Метки могут быть такими вещами как метки выравнивания или виртуальная граница листа размера
borderSize
. Реализация по умолчанию ничего не рисует.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Позволяет приложения, использующие средство разбиения на страницы Набора Приложения для рисования дополнительных меток на каждом печатном листе.
Объявление
Swift
func drawSheetBorderWithSize(_
borderSize
: NSSize)Objective C
- (void)drawSheetBorderWithSize:(NSSize)
borderSize
Параметры
borderSize
NSSize
структура, определяющая печатный лист.Обсуждение
Метки могут быть такими вещами как метки обрезки или свернуть строки размера
borderSize
. Этот метод был осужден.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
heightAdjustLimit heightAdjustLimit
СвойствоЧасть страницы, которая может быть продвинута на следующую страницу во время автоматического разбиения на страницы предотвратить элементы, такие как строки текста от того, чтобы быть разделенным через страницы. (только для чтения)
Объявление
Swift
var heightAdjustLimit: CGFloat { get }
Objective C
@property(readonly) CGFloat heightAdjustLimit
Обсуждение
Значение этого свойства является числом с плавающей точкой в диапазоне
0.0
к1.0
. Эта часть используется для вычисления предела базового края дляadjustPageHeightNew:top:bottom:limit:
сообщение.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
widthAdjustLimit widthAdjustLimit
СвойствоЧасть страницы, которая может быть продвинута на следующую страницу во время автоматического разбиения на страницы предотвратить элементы, такие как маленькие изображения или столбцы текста от того, чтобы быть разделенным через страницы. (только для чтения)
Объявление
Swift
var widthAdjustLimit: CGFloat { get }
Objective C
@property(readonly) CGFloat widthAdjustLimit
Обсуждение
Значение этого свойства является числом с плавающей точкой в диапазоне
0.0
к1.0
. Эта часть используется для вычисления предела правого края для aadjustPageWidthNew:left:right:limit:
сообщение.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Переопределенный подклассами для корректировки страницы width во время автоматического разбиения на страницы.
Объявление
Swift
func adjustPageWidthNew(_
newRight
: UnsafeMutablePointer<CGFloat>, leftleft
: CGFloat, rightproposedRight
: CGFloat, limitrightLimit
: CGFloat)Параметры
newRight
Возвраты косвенно новое
float
значение для правого края незаконченного прямоугольника страницы в системе координат получателя.left
A
float
значение, устанавливающее левый край незаконченного прямоугольника страницы в системе координат получателя.proposedRight
A
float
значение, устанавливающее правый край незаконченного прямоугольника страницы в системе координат получателя.rightLimit
Крайнее левое
float
значениеnewRight
может быть установлен в, как вычислено использование значенияwidthAdjustLimit
свойство.Обсуждение
Этот метод вызывается
print:
. Получатель может вытянуть в правом краю и возвратить новое значение вnewRight
, разрешение его предотвратить элементы, такие как маленькие изображения или столбцы текста от того, чтобы быть разделенным через страницы. ЕслиrightLimit
превышен, механизм разбиения на страницы просто используетrightLimit
для правого края.Реализация по умолчанию этого метода распространяет сообщение к своим подпредставлениям, позволяя вложенным представлениям привести страницу width в соответствие с их получением также.
NSButton
возразите или другое маленькое представление, например, пошагово переместит правый край при необходимости, чтобы препятствовать тому, чтобы себя был сокращен в два (таким образом, продвижение его на смежную страницу). Подклассы должны вызватьsuper
реализация при желании после первого внесения их собственных корректировок.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Переопределенный подклассами для регулирования высоты страницы во время автоматического разбиения на страницы.
Объявление
Swift
func adjustPageHeightNew(_
newBottom
: UnsafeMutablePointer<CGFloat>, toptop
: CGFloat, bottomproposedBottom
: CGFloat, limitbottomLimit
: CGFloat)Параметры
newBottom
Возвраты косвенно новое
float
значение для базового края незаконченного прямоугольника страницы в системе координат получателя.top
A
float
значение, устанавливающее главный край незаконченного прямоугольника страницы в системе координат получателя.proposedBottom
A
float
значение, устанавливающее базовый край незаконченного прямоугольника страницы в системе координат получателя.bottomLimit
Самое верхнее значение плавающее
newBottom
может быть установлен в, как вычислено использование значенияheightAdjustLimit
свойство.Обсуждение
Этот метод вызывается
print:
. Получатель может повысить базовый край и возвратить новое значение вnewBottom
, разрешение его предотвратить элементы, такие как строки текста от того, чтобы быть разделенным через страницы. ЕслиbottomLimit
превышен, механизм разбиения на страницы просто используетbottomLimit
для базового края.Реализация по умолчанию этого метода распространяет сообщение к своим подпредставлениям, позволяя вложенным представлениям регулировать высоту страницы для их получения также.
NSButton
возразите или другое маленькое представление, например, пошагово переместит базовый край при необходимости, чтобы препятствовать тому, чтобы себя был сокращен в два (таким образом, продвижение его на смежную страницу). Подклассы должны вызватьsuper
реализация при желании после первого внесения их собственных корректировок.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвраты
YES
true
если получатель обрабатывает границы страницы,NO
false
иначе.Объявление
Swift
func knowsPageRange(_
aRange
: NSRangePointer) -> BoolObjective C
- (BOOL)knowsPageRange:(NSRangePointer)
aRange
Параметры
aRange
По возврату, содержит диапазон страницы если
YES
true
возвращается непосредственно. Номера страниц на основе одни — который является страницами, выполненными от одного до N.Обсуждение
Возвраты
NO
false
если получатель использует механизм авторазбиения на страницы по умолчанию. Возвраты реализации по умолчаниюNO
false
. Переопределите этот метод, если Ваш класс обрабатывает границы страницы.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Реализованный подклассами для определения части получателя, который будет распечатан для страницы номера страницы.
Объявление
Параметры
pageNumber
Целое число, указывающее номер страницы. Номера страниц на основе одни — который является страницами, выполненными от одного до N.
Возвращаемое значение
Прямоугольник, определяющий область получателя, который будет распечатан для
pageNumber
. Этот метод возвратыNSZeroRect
еслиpageNumber
вне границ получателя.Обсуждение
Если ответил получатель
YES
true
к более раннемуknowsPageRange:
сообщение, этот метод вызывается для каждой страницы, которую это указало в параметры того сообщения. Получатель позже сделан вывести на экран этот прямоугольник для генерации изображения для этой страницы.Если
NSView
объект отвечаетNO
false
кknowsPageRange:
, этот метод не вызывается механизмом печати.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Вызванный
print:
определить расположение области получателя, распечатываемого на физической странице.Объявление
Параметры
aRect
Прямоугольник, определяющий область получателя; это выражено в системе координат по умолчанию страницы.
Возвращаемое значение
Точка, которая будет использоваться для установки источника для
aRect
, чей размер получатель может исследовать для надлежащего размещения его. Это выражено в системе координат по умолчанию страницы.Обсуждение
Места реализации по умолчанию
aRect
согласно состояниюNSPrintInfo
объект для задания печати. По умолчанию это помещает изображение в верхний левый угол страницы, но еслиNSPrintInfo
методыisHorizontallyCentered
илиisVerticallyCentered
возвратитьсяYES
true
, это центрирует изображение единственной страницы вдоль надлежащей оси. Документ многократной страницы, однако, всегда помещается так, разделенные части могут быть собраны в их краях.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Средства управления, отмечены ли все границы получателя как нуждающийся в дисплее.
Объявление
Swift
var needsDisplay: Bool
Objective C
@property BOOL needsDisplay
Параметры
flag
Если
YES
true
, отмечает все границы получателя как нуждающийся в дисплее; еслиNO
false
, метки это как не нуждающийся в дисплее.Обсуждение
Каждый раз, когда данные или состояние, используемое для рисования объекта представления изменения, представление должно быть отправлено setNeedsDisplay: сообщение.
NSView
объекты, отмеченные как нуждающийся в дисплее, автоматически восстановлены на каждом, проходят через цикл событий приложения. (Объекты представления, которые должны восстановить изображение перед циклом событий, приходят, может, конечно, сразу быть отправлен надлежащееdisplay...
метод.)Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Отмечает область получателя в указанном прямоугольнике как нуждающийся в дисплее, увеличивая существующую недопустимую область получателя для включения его.
Объявление
Swift
func setNeedsDisplayInRect(_
invalidRect
: NSRect)Objective C
- (void)setNeedsDisplayInRect:(NSRect)
invalidRect
Параметры
invalidRect
Прямоугольная область получателя для маркировки как недопустимый; это должно быть указано в системе координат получателя.
Обсуждение
Более позднее
displayIfNeeded...
метод тогда выполнит получение только в недопустимой области. Объекты представления, отмеченные как нуждающийся в дисплее, автоматически восстановлены на каждом, проходят через цикл событий приложения. (Объекты представления, которые должны восстановить изображение перед циклом событий, приходят, может, конечно, сразу быть отправлен надлежащееdisplay...
метод.)Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
needsDisplay needsDisplay
СвойствоБулево значение, указывающее, должно ли представление быть перерисовано прежде чем быть выведенным на экран.
Объявление
Swift
var needsDisplay: Bool
Objective C
@property BOOL needsDisplay
Обсуждение
displayIfNeeded...
методы проверяют значение этого свойства для предотвращения ненужного получения, и все методы дисплея задерживают значение кNO
false
когда представление актуально.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Выводит на экран получатель и все его подпредставления, если это возможно, вызывая каждый из
NSView
методыlockFocus
,drawRect:
, иunlockFocus
по мере необходимости.Объявление
Swift
func display()
Objective C
- (void)display
Обсуждение
Если получатель не непрозрачен, этот метод копирует иерархию представления первому непрозрачному наследователю, вычисляет часть непрозрачного наследователя, покрытого получателем, и начинает отображать оттуда.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Акты как
display
, но ограничивая рисующий к прямоугольной области получателя.Параметры
aRect
Прямоугольник, определяющий область получателя, который будет перерисован; должен быть указан в системе координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Выводит на экран получатель, но получение ограничений к указанной области и не отступает до первого непрозрачного наследователя — это просто заставляет получатель и его потомков выполнять их код для прорисовки.
Объявление
Swift
func displayRectIgnoringOpacity(_
aRect
: NSRect)Objective C
- (void)displayRectIgnoringOpacity:(NSRect)
aRect
Параметры
aRect
Прямоугольник, определяющий область получателя, который будет перерисован; должен быть указан в системе координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Заставляет получатель и его потомков быть перерисованным к указанному графическому контексту.
Объявление
Swift
func displayRectIgnoringOpacity(_
aRect
: NSRect, inContextcontext
: NSGraphicsContext)Objective C
- (void)displayRectIgnoringOpacity:(NSRect)
aRect
inContext:(NSGraphicsContext *)context
Параметры
aRect
Прямоугольник, определяющий область получателя, который будет перерисован. Это должно быть указано в системе координат получателя.
context
Графический контекст, в котором произойдет получение. Посмотрите обсуждение ниже для больше об этом параметре.
Обсуждение
Акты как
display
, но получение ограничений кaRect
. Даже если получатель не непрозрачен, этот метод инициирует получение с получателем. Надлежащие масштабные коэффициенты для представления получены изcontext
.Если
context
параметр представляет контекст для окна, содержащего представление, тогда все необходимые трансформации применяются. Это включает приложение границ получателя, и кадр преобразовывает вместе с любым, преобразовывает наследованный от его наследователей. В этой ситуации представление также отмечено как больше необходимость в обновлении для указанного прямоугольника.Если
context
указывает любой другой графический контекст, тогда только преобразование границ получателя применяется. Это означает, что получение не ограничивается к видимому прямоугольнику представления. Это также означает, что любые грязные прямоугольники не очищены, так как они не перерисовываются к окну.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
-
Если какая-либо часть получателя была отмечена как нуждающийся в дисплее, выводит на экран получатель и все его подпредставления.
Объявление
Swift
func displayIfNeeded()
Objective C
- (void)displayIfNeeded
Обсуждение
Этот метод вызывает
NSView
методыlockFocus
,drawRect:
, иunlockFocus
по мере необходимости. Если получатель не непрозрачен, этот метод копирует иерархию представления первому непрозрачному наследователю, вычисляет часть непрозрачного наследователя, покрытого получателем, и начинает отображать оттуда.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Акты как
displayIfNeeded
, ограничение получения к указанной области получателя..Объявление
Swift
func displayIfNeededInRect(_
aRect
: NSRect)Objective C
- (void)displayIfNeededInRect:(NSRect)
aRect
Параметры
aRect
Прямоугольник, определяющий область, которая будет перерисована. Это должно быть указано в системе координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Акты как
displayIfNeeded
, за исключением того, что этот метод не отступает до первого непрозрачного наследователя — он просто заставляет получатель и его потомков выполнять их код для прорисовки.Объявление
Swift
func displayIfNeededIgnoringOpacity()
Objective C
- (void)displayIfNeededIgnoringOpacity
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Акты как
displayIfNeeded
, но ограничение получения кaRect
и не отступая до первого непрозрачного наследователя — это просто заставляет получатель и его потомков выполнять их код для прорисовки.Объявление
Swift
func displayIfNeededInRectIgnoringOpacity(_
aRect
: NSRect)Objective C
- (void)displayIfNeededInRectIgnoringOpacity:(NSRect)
aRect
Параметры
aRect
Прямоугольник, определяющий область, которая будет перерисована. Это должно быть указано в системе координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Переводит прямоугольники дисплея указанной дельтой.
Объявление
Параметры
clipRect
Прямоугольник, определяющий область получателя, обычно границы получателя.
delta
Структура NSSize, указывающая смещение от от источника aRect.
Обсуждение
Этот метод выполняет смещение грязных прямоугольников что эквивалент
scrollRect:by:
работа вызвала бы, не выполняя фактическую работу прокрутки. Только полезно в очень редких случаях, где представление реализует свою собственную низкоуровневую механику прокрутки.Этот метод:
Собирает грязные прямоугольники представления получения.
Очищает все грязные прямоугольники в пересечении
clipRect
и границы представления.Смещает полученные прямоугольники на
delta
смещение.Отсекает результат к пересечению
clipRect
и границы представленияОтмечает результирующие прямоугольники как нуждающийся в дисплее.
Разработчик должен гарантировать это
clipRect
иdelta
выравниваются пикселем для гарантии корректного получения. Посмотрите Координаты Представления Преобразования К и От Основного Пространства для описания того, как к пикселю - выравнивают координаты представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
непрозрачный непрозрачный
СвойствоБулево значение, указывающее, заполняет ли представление свой прямоугольник кадра непрозрачным содержанием. (только для чтения)
Объявление
Swift
var opaque: Bool { get }
Objective C
@property(getter=isOpaque, readonly) BOOL opaque
Обсуждение
Значение по умолчанию этого свойства
NO
false
отразить факт, что представления не делают никакого получения по умолчанию. Подклассы могут переопределить это свойство и возвратYES
true
указать, что представление полностью покрывает свой прямоугольник кадра непрозрачным содержанием. Выполнение так может улучшить производительность во время операций рисования, избавив от необходимости представить содержание позади представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Сообщает получателю, что он потребуется, чтобы рисовать содержание.
Объявление
Swift
func viewWillDraw()
Objective C
- (void)viewWillDraw
Обсуждение
В ответ на получение одного из дисплея... обменивается сообщениями, получатель рекурсивно вызовет вниз иерархию представления, отправляя это сообщение в каждое из представлений, которые могут быть вовлечены в работу дисплея.
Подклассы могут переопределить этот метод, чтобы переместить или изменить размеры представлений, отметить дополнительные области как требующий дисплея или других действий, которые могут лучше всего быть задержаны, пока они не требуются для рисования. Во время рекурсии, отправки
setNeedsDisplay:
иsetNeedsDisplayInRect:
сообщения к представлениям в иерархии, это собирается быть нарисованным, допустимы и поддерживаются и будут влиять на оценку общей площади, которая будет представлена в той передаче получения.Реализация подкласса
viewWillDraw
может использовать существующий NSViewgetRectsBeingDrawn:count:
метод для получения списка прямоугольников, связавших зону поражения, позволив ему ограничить ее усилия той областью.Следующее является примером универсальной реализации подкласса:
- (void)viewWillDraw {
// Perform some operations before recursing for descendants.
// Now recurse to handle all our descendants.
// Overrides must call up to super like this.
[super viewWillDraw];
// Perform some operations that might depend on descendants
// already having had a chance to update.
}
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращается пиксель запоминающего устройства выровнял прямоугольник в координатах окна.
Объявление
Swift
func backingAlignedRect(_
aRect
: NSRect, optionsoptions
: NSAlignmentOptions) -> NSRectObjective C
- (NSRect)backingAlignedRect:(NSRect)
aRect
options:(NSAlignmentOptions)options
Параметры
aRect
Прямоугольник в поле зрения координирует.
options
Опции выравнивания. Посмотрите
NSAlignmentOptions
для возможных значений.Возвращаемое значение
Прямоугольник, который является выровненный к пикселям запоминающего устройства с помощью указанных опций. Прямоугольник находится в координатах окна.
Обсуждение
Использование
NSIntegralRectWithOptions
функционируйте для создания выровненного прямоугольника пикселя запоминающего устройства из данного входного прямоугольника в координатах окна.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Преобразовывает точку от выровненной системы координат запоминающего устройства ее пикселя до внутренней системы координат представления.
Объявление
Параметры
aPoint
Точка в пиксельном запоминающем устройстве выровняла систему координат.
Возвращаемое значение
Точка во внутренней системе координат представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает точку от внутренней системы координат представления до выровненной системы координат запоминающего устройства ее пикселя.
Объявление
Параметры
aPoint
Точка во внутренней системе координат представления.
Возвращаемое значение
Точка в ее пикселе выровняла систему координат запоминающего устройства.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте точку от внутренней системы координат уровня до внутренней системы координат представления.
Объявление
Параметры
aPoint
Точка во внутренней системе координат уровня.
Возвращаемое значение
Точка во внутренней системе координат представления.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте размер от внутренней системы координат представления до внутренней системы координат уровня.
Объявление
Параметры
aPoint
Точка во внутренней системе координат представления.
Возвращаемое значение
Точка во внутренней системе координат уровня представления.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает прямоугольник от выровненной системы координат запоминающего устройства его пикселя до внутренней системы координат представления.
Объявление
Параметры
aRect
Прямоугольник в пиксельной системе координат запоминающего устройства.
Возвращаемое значение
Прямоугольник во внутренней системе координат представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает прямоугольник от внутренней системы координат представления до выровненной системы координат запоминающего устройства ее пикселя.
Объявление
Параметры
aRect
Прямоугольник во внутренней системе координат представления.
Возвращаемое значение
Прямоугольник в его пикселе выровнял систему координат запоминающего устройства.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте прямоугольник от внутренней системы координат уровня до внутренней системы координат представления.
Объявление
Параметры
aRect
Прямоугольник во внутренней системе координат уровня.
Возвращаемое значение
Прямоугольник во внутренней системе координат представления.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте размер от внутренней системы координат представления до внутренней системы координат уровня.
Объявление
Параметры
aRect
Прямоугольник во внутренней системе координат представления.
Возвращаемое значение
Прямоугольник во внутренней системе координат уровня.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает размер от выровненной системы координат запоминающего устройства его пикселя до внутренней системы координат представления.
Объявление
Параметры
aSize
Размер в пикселе выровнял координатную систему координат.
Возвращаемое значение
Размер во внутренней системе координат представления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает размер от внутренней системы координат представления до выровненной системы координат запоминающего устройства ее пикселя.
Объявление
Параметры
aSize
Размер во внутренней системе координат представления.
Возвращаемое значение
Размер в пикселе выровнял координатную систему координат.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте размер от внутренней системы координат уровня до внутренней системы координат представления.
Объявление
Параметры
aSize
Размер во внутренней системе координат уровня.
Возвращаемое значение
Размер во внутренней системе координат представления.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Возвращенный
NSSize
значения всегда вынуждаются иметь положительный ширина и высота.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразуйте размер от внутренней системы координат представления до внутренней системы координат уровня.
Объявление
Параметры
aSize
Размер во внутренней системе координат представления.
Возвращаемое значение
Размер во внутренней системе координат уровня.
Обсуждение
Пространство уровня является виртуальным, и не принимает во внимание уровень
contentsScale
установка.Возвращенный
NSSize
значения всегда вынуждаются иметь положительный ширина и высота.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Преобразовывает точку из системы координат высказанного мнения к тому из получателя.
Объявление
Параметры
aPoint
Точка, указывающая расположение в системе координат
aView
.aView
Представление с
aPoint
в его системе координат. ОбаaView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает из координат окна вместо этого.Возвращаемое значение
Точка, преобразованная в систему координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertRect:fromView:
– convertSize:fromView:
– ancestorSharedWithView:
contentView
(NSWindow) -
Преобразовывает точку от системы координат получателя до того из высказанного мнения.
Объявление
Параметры
aPoint
Точка, указывающая расположение в системе координат получателя.
aView
Представление то, в чей систему координат
aPoint
должен быть преобразован. ОбаaView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает в координаты окна вместо этого.Возвращаемое значение
Точка, преобразованная в систему координат
aView
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertRect:toView:
– convertSize:toView:
– ancestorSharedWithView:
contentView
(NSWindow
) -
Преобразовывает размер от системы координат другого представления до того из получателя.
Объявление
Параметры
aSize
Размер (ширина и высота) в
aView
система координат.aView
Представление с
aSize
в его системе координат. ОбаaView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает из координат окна вместо этого.Возвращаемое значение
Преобразованный размер, как
NSSize
структура.Обсуждение
Возвращенный
NSSize
значения всегда вынуждаются иметь положительный ширина и высота.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertPoint:fromView:
– convertRect:fromView:
– ancestorSharedWithView:
contentView
(NSWindow
) -
Преобразовывает размер от системы координат получателя до того из другого представления.
Объявление
Параметры
aSize
Размер (ширина и высота) в системе координат получателя.
aView
Представление, которое является целью работы преобразования. Оба
aView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает в координаты окна вместо этого.Возвращаемое значение
Преобразованный размер, как
NSSize
структура.Обсуждение
Возвращенный
NSSize
значения всегда вынуждаются иметь положительный ширина и высота.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertPoint:toView:
– convertRect:toView:
– ancestorSharedWithView:
contentView
(NSWindow) -
Преобразовывает прямоугольник из системы координат другого представления к тому из получателя.
Объявление
Параметры
aRect
Прямоугольник в
aView
система координат.aView
Представление с
aRect
в его системе координат. ОбаaView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает из координат окна вместо этого.Возвращаемое значение
Преобразованный прямоугольник.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertPoint:fromView:
– convertSize:fromView:
– ancestorSharedWithView:
contentView
(NSWindow
) -
Преобразовывает прямоугольник от системы координат получателя до того из другого представления.
Объявление
Параметры
aRect
Прямоугольник в системе координат получателя.
aView
Представление, которое является целью работы преобразования. Оба
aView
и получатель должен принадлежать тому жеNSWindow
объект и то окно не должны бытьnil
. ЕслиaView
nil
, этот метод преобразовывает прямоугольник в координаты окна вместо этого.Возвращаемое значение
Преобразованный прямоугольник.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– convertPoint:toView:
– convertSize:toView:
– ancestorSharedWithView:
contentView
(NSWindow
) -
Преобразовывает углы указанного прямоугольника для расположения на центре пикселей устройства, который полезен в компенсации за рендеринг сверхсканирования, когда масштабировалась система координат.
Объявление
Параметры
aRect
Прямоугольник, углы которого должны быть преобразованы.
Возвращаемое значение
Скорректированный прямоугольник.
Обсуждение
Этот метод преобразовывает данный прямоугольник в координаты устройства, корректирует прямоугольник для расположения в центре пикселей и преобразовывает получающийся прямоугольник назад в систему координат получателя. Обратите внимание на то, что этот метод не принимает во внимание, что любые трансформации выполнили использование
NSAffineTransform
класс или Кварц 2D подпрограммы.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Переводит систему координат получателя так, чтобы ее источник переместился в новое расположение.
Объявление
Swift
func translateOriginToPoint(_
newOrigin
: NSPoint)Objective C
- (void)translateOriginToPoint:(NSPoint)
newOrigin
Параметры
newOrigin
Точка, указывающая новый источник.
Обсуждение
В процессе, источник прямоугольника границ получателя смещается на (
–
newOrigin
.x
,–
newOrigin
.y
). Этот метод не восстанавливает изображение получателя и не отмечает его как нуждающийся в дисплее. Необходимо сделать это сами сdisplay
илиsetNeedsDisplay:
.Отметьте различие между этим методом и установкой источника границ. В то время как установка источника границ эффективно перемещает прямоугольник через изображение, перевод эффективно перемещает изображение в прямоугольнике границ. Эти два являются в некотором смысле обратными, несмотря на то, что перевод кумулятивен, и установка источника границ является абсолютной.
Этот метод отправляет
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если получатель сконфигурирован, чтобы сделать так.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Масштабирует систему координат получателя так, чтобы квадрат модуля масштабировался к указанным размерностям.
Объявление
Swift
func scaleUnitSquareToSize(_
newUnitSize
: NSSize)Objective C
- (void)scaleUnitSquareToSize:(NSSize)
newUnitSize
Параметры
newUnitSize
NSSize
структура, указывающая новый размер модуля.Обсуждение
Например, a
newUnitSize
из (0.5, 1.0) заставляет горизонтальные координаты получателя быть разделенными на два, поочередно удваивая ширину его прямоугольника границ. Обратите внимание на то, что масштабирование выполняется от источника системы координат, (0.0, 0.0), не источника прямоугольника границ; в результате и источник и размер прямоугольника границ изменяются. Прямоугольник кадра остается неизменным.Этот метод не восстанавливает изображение получателя и не отмечает его как нуждающийся в дисплее. Необходимо сделать это сами с
display
илиsetNeedsDisplay:
.Этот метод отправляет
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если получатель сконфигурирован, чтобы сделать так.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Поворачивает прямоугольник границ получателя на указанное значение градуса вокруг источника системы координат, (0.0, 0.0).
Объявление
Swift
func rotateByAngle(_
angle
: CGFloat)Objective C
- (void)rotateByAngle:(CGFloat)
angle
Параметры
angle
A
float
значение, указывающее угол вращения, в градусах.Обсуждение
Посмотрите
boundsRotation
описание метода для получения дополнительной информации. Этот метод не восстанавливает изображение получателя и не отмечает его как нуждающийся в дисплее. Необходимо сделать это сами сdisplay
илиsetNeedsDisplay:
.Этот метод отправляет
NSViewBoundsDidChangeNotification
к центру уведомления по умолчанию, если получатель сконфигурирован, чтобы сделать так.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
зеркально отраженный зеркально отраженный
СвойствоБулево значение, указывающее, использует ли представление зеркально отраженную систему координат. (только для чтения)
Объявление
Swift
var flipped: Bool { get }
Objective C
@property(getter=isFlipped, readonly) BOOL flipped
Обсуждение
Значение по умолчанию этого свойства
NO
false
, который приводит к незеркально отраженной системе координат. В незеркально отраженной системе координат источник находится в нижнем правом углу представления, и положительные y-значения расширяются вверх. В зеркально отраженной системе координат источник находится в верхнем левом углу представления, и y-значения расширяются вниз. X-значения всегда расширяются вправо.Если Вы хотите, чтобы Ваше представление использовало зеркально отраженную систему координат, переопределите это свойство и возврат
YES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
rotatedFromBase rotatedFromBase
СвойствоБулево значение, указывающее, применялись ли представлению или какому-либо из его наследователей когда-либо к фактору вращения его кадр или границы. (только для чтения)
Объявление
Swift
var rotatedFromBase: Bool { get }
Objective C
@property(getter=isRotatedFromBase, readonly) BOOL rotatedFromBase
Обсуждение
Значение этого свойства
YES
true
если у представления или какого-либо из его наследователей был егоframeRotation
илиboundsRotation
свойства, измененные в любое время. Значение тихоYES
true
если фактор вращения изменяется на ненулевое значение и затем назад к 0.Используйте эту информацию для оптимизации получения и координатного вычисления. Не используйте его для отражения точного состояния системы координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Булево значение, указывающее, применялись ли представлению или какому-либо из его наследователей когда-либо к фактору вращения его кадр или границы, или масштабировались от основной системы координат окна. (только для чтения)
Объявление
Swift
var rotatedOrScaledFromBase: Bool { get }
Objective C
@property(getter=isRotatedOrScaledFromBase, readonly) BOOL rotatedOrScaledFromBase
Обсуждение
Значение этого свойства
YES
true
если у представления или какого-либо из его наследователей был егоframeRotation
илиboundsRotation
свойства, измененные в любое время. Значение тихоYES
true
если фактор вращения изменяется на ненулевое значение и затем назад к 0.Используйте эту информацию для оптимизации получения и координатного вычисления. Не используйте его для отражения точного состояния системы координат получателя.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
autoresizesSubviews autoresizesSubviews
СвойствоБулево значение, указывающее, применяет ли представление поведение автоизменения размеров к своим подпредставлениям, когда изменяется его тип телосложения.
Объявление
Swift
var autoresizesSubviews: Bool
Objective C
@property BOOL autoresizesSubviews
Обсуждение
Когда значение этого свойства
YES
true
и изменения кадра представления, представление автоматически вызываетresizeSubviewsWithOldSize:
метод для упрощения изменения размеров его подпредставлений. Когда значение этого свойстваNO
false
, представление не автоизменяет размеры своих подпредставлений.Значение по умолчанию этого свойства
YES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
autoresizingMask autoresizingMask
СвойствоОпции, определяющие, как представление изменено относительно его суперпредставления.
Объявление
Swift
var autoresizingMask: NSAutoresizingMaskOptions
Objective C
@property NSAutoresizingMaskOptions autoresizingMask
Обсуждение
Значение этого свойства является целочисленной битовой маской, указанной путем объединения опций, описанных в
NSAutoresizingMaskOptions
. Эта маска используетсяresizeWithOldSuperviewSize:
метод, когда должно быть изменено представление.Если маска автоизменения размеров установлена в
NSViewNotSizable
(т.е. если ни одна из опций не установлена), получатель не изменяет размеры вообще. Когда больше чем одна опция вдоль оси установлена,resizeWithOldSuperviewSize:
метод распределяет различие в размере максимально равномерно среди гибких частей. Например, еслиNSViewWidthSizable
иNSViewMaxXMargin
установлены и суперпредставление width увеличилось10.0
точки, кадр получателя и правое поле каждый расширены5.0
точки.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Сообщает подпредставлениям получателя, что изменился прямоугольный размер границ получателя.
Объявление
Swift
func resizeSubviewsWithOldSize(_
oldBoundsSize
: NSSize)Objective C
- (void)resizeSubviewsWithOldSize:(NSSize)
oldBoundsSize
Параметры
oldBoundsSize
Предыдущий размер прямоугольника границ получателя.
Обсуждение
Если получатель сконфигурирован для автоизменения размеры его подпредставлений, этот метод автоматически вызывается любым методом, изменяющим тип телосложения получателя.
Реализация по умолчанию отправляет
resizeWithOldSuperviewSize:
к подпредставлениям получателя сoldBoundsSize
как параметр. Вы не должны вызывать этот метод непосредственно, но можно переопределить его для определения определенного поведения перемозаичного размещения.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Сообщает получателю, что изменился размер границ его суперпредставления.
Объявление
Swift
func resizeWithOldSuperviewSize(_
oldBoundsSize
: NSSize)Objective C
- (void)resizeWithOldSuperviewSize:(NSSize)
oldBoundsSize
Параметры
oldBoundsSize
Предыдущий размер прямоугольника границ суперпредставления.
Обсуждение
Этот метод обычно вызывается автоматически от
resizeSubviewsWithOldSize:
.Реализация по умолчанию изменяет размеры получателя согласно опциям автоизменения размеров, указанным
autoresizingMask
свойство. Вы не должны вызывать этот метод непосредственно, но можно переопределить его для определения определенного поведения изменения размеров.Если Вы переопределяете этот метод и вызов
super
как часть Вашей реализации, несомненно, необходимо будет вызватьsuper
прежде, чем внести изменения в кадр представления приема самостоятельно.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
ограничения ограничения
СвойствоОграничения сохранены представлением. (только для чтения)
Объявление
Swift
var constraints: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *constraints
Обсуждение
Это свойство содержит массив
NSLayoutConstraint
объекты, представляющие ограничения, применились к представлению. Если представление не имеет никаких ограничений, это свойство содержит пустой массив.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Добавляет ограничение на расположение представления получения или его подпредставлений.
Объявление
Swift
func addConstraint(_
constraint
: NSLayoutConstraint)Objective C
- (void)addConstraint:(NSLayoutConstraint *)
constraint
Параметры
constraint
Ограничение, которое будет добавлено к представлению. Ограничение может только сослаться на само представление или его подпредставления.
Обсуждение
Ограничение должно включить только представления, которые являются в объеме представления получения. В частности любые включенные представления должны быть самим или представлением получения или подпредставлением представления получения. Ограничения, добавляющиеся к представлению, как говорят, сохранены тем представлением. Система координат, используемая при оценке ограничения, является системой координат представления, содержащего ограничение.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Добавляют многократные ограничения на расположение представления получения или его подпредставлений.
Объявление
Swift
func addConstraints(_
constraints
: [AnyObject])Objective C
- (void)addConstraints:(NSArray *)
constraints
Параметры
constraints
Массив ограничений, которые будут добавлены к представлению. Все ограничения могут только сослаться на само представление или его подпредставления.
Обсуждение
Все ограничения должны включить только представления, которые являются в объеме представления получения. В частности любые включенные представления должны быть самим или представлением получения или подпредставлением представления получения. Ограничения, добавляющиеся к представлению, как говорят, сохранены тем представлением. Система координат, используемая при оценке каждого ограничения, является системой координат представления, содержащего ограничение.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Удаляет указанное ограничение из представления.
Объявление
Swift
func removeConstraint(_
constraint
: NSLayoutConstraint)Objective C
- (void)removeConstraint:(NSLayoutConstraint *)
constraint
Параметры
constraint
Ограничение для удаления. Удаление ограничения, не сохраненного представлением, не имеет никакого эффекта.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Удаляет указанные ограничения из представления.
Объявление
Swift
func removeConstraints(_
constraints
: [AnyObject])Objective C
- (void)removeConstraints:(NSArray *)
constraints
Параметры
constraints
Ограничения для удаления.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
fittingSize fittingSize
СвойствоМинимальный размер представления, удовлетворяющего ограничения, которые это содержит. (только для чтения)
Обсуждение
AppKit устанавливает это свойство в лучший размер, доступный для представления, рассматривая все ограничения, которые это и его подпредставления содержат и удовлетворение предпочтения для создания представления как можно меньше. Значения размера в этом свойстве никогда не отрицательны.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
intrinsicContentSize intrinsicContentSize
СвойствоЕстественный размер для представления получения, рассматривая только свойства самого представления. (только для чтения)
Объявление
Swift
var intrinsicContentSize: NSSize { get }
Objective C
@property(readonly) NSSize intrinsicContentSize
Возвращаемое значение
Размер, указывающий естественный размер для получения, просматривает на основе его внутренних свойств.
Обсуждение
Значения ширины и высоты по умолчанию этого свойства установлены в
NSViewNoInstrinsicMetric
. Для пользовательского представления можно переопределить это свойство и использовать его для передачи, какой размер Вы хотели бы, чтобы Ваше представление основывалось на своем содержании. Вы могли бы сделать это в случаях, где система расположения не может определить размер представления, базируемого исключительно на его текущих ограничениях. Например, текстовое поле могло бы переопределить этот метод и возвратить внутренний размер на основе текста, который это содержит. Внутренний размер, который Вы предоставляете, должен быть независим от довольного кадр, потому что нет никакого способа динамично передать измененную ширину к системе расположения на основе измененной высоты. Если Ваше пользовательское представление не имеет никакого внутреннего размера для данной размерности, можно установить соответствующую размерность вNSViewNoInstrinsicMetric
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Лишает законной силы внутренний размер содержания представления.
Объявление
Swift
func invalidateIntrinsicContentSize()
Objective C
- (void)invalidateIntrinsicContentSize
Обсуждение
Вызовите это, когда что-то изменяется в Вашем пользовательском представлении, лишающем законной силы его внутренний размер содержания. Это позволяет системе расположения на основе ограничений брать новый внутренний размер содержания во внимание в его следующей передаче расположения.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
contentCompressionResistancePriorityForOrientation (_:) - contentCompressionResistancePriorityForOrientation:
Возвращает приоритет, с которым представление сопротивляется быть сделанным меньшим, чем его внутренний размер.
Объявление
Swift
func contentCompressionResistancePriorityForOrientation(_
orientation
: NSLayoutConstraintOrientation) -> NSLayoutPriorityObjective C
- (NSLayoutPriority)contentCompressionResistancePriorityForOrientation:(NSLayoutConstraintOrientation)
orientation
Параметры
orientation
Ориентация размерности представления, которое могло бы быть сокращено.
Возвращаемое значение
Приоритет, с которым представление должно сопротивляться быть сжатым от своего внутреннего размера в указанной ориентации.
Обсуждение
Система расположения на основе ограничений использует эти приоритеты при определении лучшего расположения для представлений, встречающихся с ограничениями, которые потребовали бы, чтобы они были меньшими, чем их внутренний размер.
Подклассы не должны переопределять этот метод. Вместо этого пользовательские представления должны установить значения по умолчанию для своего содержания на создании, обычно к
NSLayoutPriorityDefaultLow
илиNSLayoutPriorityDefaultHigh
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
setContentCompressionResistancePriority (_: forOrientation:) - setContentCompressionResistancePriority:forOrientation:
Устанавливает приоритет, с которым представление сопротивляется быть сделанным меньшим, чем его внутренний размер.
Объявление
Swift
func setContentCompressionResistancePriority(_
priority
: NSLayoutPriority, forOrientationorientation
: NSLayoutConstraintOrientation)Objective C
- (void)setContentCompressionResistancePriority:(NSLayoutPriority)
priority
forOrientation:(NSLayoutConstraintOrientation)orientation
Параметры
priority
Новый приоритет.
orientation
Ориентация, для которой должен быть установлен приоритет сопротивления сжатия.
Обсуждение
Пользовательские представления должны установить значения по умолчанию для обеих ориентаций на создании, на основе их содержания, обычно к
NSLayoutPriorityDefaultLow
илиNSLayoutPriorityDefaultHigh
. Когда полный проект расположения требует различных компромиссов, чем естественные приоритеты представлений, используемых в интерфейсе, при создании пользовательских интерфейсов разработчик расположения может изменить эти приоритеты для определенных представлений.Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Возвращает приоритет, с которым представление сопротивляется быть сделанным больше, чем его внутренний размер.
Объявление
Swift
func contentHuggingPriorityForOrientation(_
orientation
: NSLayoutConstraintOrientation) -> NSLayoutPriorityObjective C
- (NSLayoutPriority)contentHuggingPriorityForOrientation:(NSLayoutConstraintOrientation)
orientation
Параметры
orientation
Ориентация размерности представления, которое могло бы быть увеличено.
Возвращаемое значение
Приоритет, с которым представление должно сопротивляться быть увеличенным от своего внутреннего размера в указанной ориентации.
Обсуждение
Система расположения на основе ограничений использует эти приоритеты при определении лучшего расположения для представлений, встречающихся с ограничениями, которые потребовали бы, чтобы они были больше, чем их внутренний размер.
Подклассы не должны переопределять этот метод. Вместо этого пользовательские представления должны установить значения по умолчанию для своего содержания на создании, обычно к
NSLayoutPriorityDefaultLow
илиNSLayoutPriorityDefaultHigh
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Устанавливает приоритет, с которым представление сопротивляется быть сделанным больше, чем его внутренний размер.
Объявление
Swift
func setContentHuggingPriority(_
priority
: NSLayoutPriority, forOrientationorientation
: NSLayoutConstraintOrientation)Objective C
- (void)setContentHuggingPriority:(NSLayoutPriority)
priority
forOrientation:(NSLayoutConstraintOrientation)orientation
Параметры
priority
Новый приоритет.
orientation
Ориентация, для которой довольное должен быть установлен приоритет объятия.
Обсуждение
Пользовательские представления должны установить значения по умолчанию для обеих ориентаций на создании, на основе их содержания, обычно к
NSLayoutPriorityDefaultLow
илиNSLayoutPriorityDefaultHigh
. Когда полный проект расположения требует различных компромиссов, чем естественные приоритеты представлений, используемых в интерфейсе, при создании пользовательских интерфейсов разработчик расположения может изменить эти приоритеты для определенных представлений.Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Возвращает прямоугольник выравнивания представления для данного кадра.
Объявление
Параметры
frame
Кадр, соответствующий прямоугольник выравнивания которого желаем.
Возвращаемое значение
Прямоугольник выравнивания для указанного кадра.
Обсуждение
Система расположения на основе ограничений использует прямоугольники выравнивания для выравнивания представлений, а не их кадра. Это позволяет пользовательским представлениям быть выровненные на основе расположения их содержания, все еще имея кадр, охватывающий любое украшение, которое они должны нарисовать вокруг их содержания, такого как тени или отражения.
Реализация по умолчанию возвращает кадр представления, измененный вставками, указанными представлением
alignmentRectInsets
метод. Большинство пользовательских представлений может переопределитьalignmentRectInsets
указать расположение их содержания в их кадре. Пользовательские представления, требующие произвольных трансформаций, могут переопределитьalignmentRectForFrame:
иframeForAlignmentRect:
описать расположение их содержания. Эти два метода должны всегда быть инверсиями друг друга.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Возвращает кадр представления для данного прямоугольника выравнивания.
Объявление
Параметры
alignmentRect
Прямоугольник выравнивания, соответствующий кадр которого желаем.
Возвращаемое значение
Кадр для указанного прямоугольника выравнивания
Обсуждение
Система расположения на основе ограничений использует прямоугольники выравнивания для выравнивания представлений, а не их кадра. Это позволяет пользовательским представлениям быть выровненные на основе расположения их содержания, все еще имея кадр, охватывающий любое украшение, которое они должны нарисовать вокруг их содержания, такого как тени или отражения.
Возвраты реализации по умолчанию
alignmentRect
измененный вставками указан представлениемalignmentRectInsets
метод. Большинство пользовательских представлений может переопределитьalignmentRectInsets
указать расположение их содержания в их кадре. Пользовательские представления, требующие произвольных трансформаций, могут переопределитьalignmentRectForFrame:
иframeForAlignmentRect:
описать расположение их содержания. Эти два метода должны всегда быть инверсиями друг друга.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
alignmentRectInsets alignmentRectInsets
СвойствоВставки (в точках) от кадра представления, которые определяют его прямоугольник содержания. (только для чтения)
Объявление
Swift
var alignmentRectInsets: NSEdgeInsets { get }
Objective C
@property(readonly) NSEdgeInsets alignmentRectInsets
Обсуждение
Значение по умолчанию
NSEdgeInsets
структура со значением0
для каждого компонента. Пользовательские представления, рисующие украшение вокруг их содержания, могут переопределить это свойство и возвратить вставки, выравнивающиеся с краями содержания, исключая украшение. Это позволяет системе расположения на основе ограничений выравнивать представления на основе их содержания, а не просто их кадра.Пользовательские представления, расположение содержания которых не может быть выражено простым набором вставок, должны переопределить
alignmentRectForFrame:
иframeForAlignmentRect:
описать их пользовательское преобразование между прямоугольником выравнивания и кадром.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Расстояние (в точках) между нижней частью прямоугольника выравнивания представления и его базовой линией. (только для чтения)
Объявление
Swift
var baselineOffsetFromBottom: CGFloat { get }
Objective C
@property(readonly) CGFloat baselineOffsetFromBottom
Обсуждение
Значение по умолчанию этого свойства
0
. Для представлений, содержащих текст или другое содержание, расположение которого получает преимущества от наличия пользовательской базовой линии, можно переопределить это свойство и обеспечить корректное расстояние между нижней частью прямоугольника выравнивания представления и той базовой линией.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
needsLayout needsLayout
СвойствоБулево значение, указывающее, нужна ли для представления передача расположения, прежде чем это сможет быть нарисовано.
Объявление
Swift
var needsLayout: Bool
Objective C
@property BOOL needsLayout
Возвращаемое значение
YES
true
если для представления нужна передача расположения,NO
false
иначе.Обсуждение
Если представление реализует, только когда-либо необходимо изменять значение этого свойства
layout
метод, потому что это имеет пользовательский макет, который не является выразимым в системе расположения на основе ограничений. Установка этого свойства кYES
true
позволяет системе знать, что расположение представления должно быть обновлено, прежде чем это будет нарисовано. Система проверяет значение этого свойства до применения правил макета на основе ограничений для представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Выполните расположение совместно с системой расположения на основе ограничений.
Объявление
Swift
func layout()
Objective C
- (void)layout
Обсуждение
Переопределите этот метод, если Ваше пользовательское представление должно выполнить пользовательский макет не выразимое использование системы расположения на основе ограничений. В этом случае Вы ответственны за вызов
setNeedsLayout:
когда что-то, что влияет на Ваши изменения пользовательского макета.Вы не можете лишить законной силы ограничения как часть Вашей фазы макета, ни лишить законной силы расположение Вашего суперпредставления или представлений за пределами Вашей иерархии представления. Вы также не можете вызвать передачу получения как часть расположения.
Необходимо вызвать
[super layout]
как часть Вашей реализации.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Обновляет расположение представления получения и его подпредставлений на основе текущих представлений и ограничений.
Объявление
Swift
func layoutSubtreeIfNeeded()
Objective C
- (void)layoutSubtreeIfNeeded
Обсуждение
Прежде, чем вывести на экран представление, использующее основанное на ограничениях расположение, система вызывает этот метод, чтобы гарантировать, что расположение представления и его подпредставлений актуально. Этот метод обновляет расположение в случае необходимости, сначала вызывая
updateConstraintsForSubtreeIfNeeded
гарантировать, что все ограничения актуальны. Если необходимо исследовать самое актуальное расположение, этот метод вызывает автоматически система, но можно вызвать вручную.Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Булево значение, указывающее, должны ли быть обновлены ограничения представления.
Объявление
Swift
var needsUpdateConstraints: Bool
Objective C
@property BOOL needsUpdateConstraints
Обсуждение
Когда свойство Вашего представления изменяется в пути, который повлиял бы на ограничения, установить значение этого свойства к
YES
true
указать, что ограничения должны быть обновлены в некоторый момент в будущем. В следующий раз, когда процесс создания макета происходит, система расположения на основе ограничений использует значение этого свойства, чтобы определить, должно ли это вызватьupdateConstraints
на представлении.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Ограничения обновления для представления.
Объявление
Swift
func updateConstraints()
Objective C
- (void)updateConstraints
Обсуждение
Пользовательские представления, устанавливающие сами ограничения, должны сделать так путем переопределения этого метода. Когда Ваше пользовательское представление отмечает, что изменение было внесено в представление, лишающее законной силы одно из его ограничений, это должно сразу удалить то ограничение и обновить
needsUpdateConstraints
свойство, чтобы отметить, что должны быть обновлены ограничения. Прежде чем расположение выполняется, Ваша реализацияupdateConstraints
будет вызван, позволяя Вам проверить, что все необходимые ограничения для Вашего содержания существуют в то время, когда не изменяются свойства Вашего пользовательского представления.Вы не можете лишить законной силы ограничения как часть Вашей ограничительной фазы обновления. Вы также не можете вызвать расположение или фазу получения как часть ограничительного обновления.
Необходимо вызвать
[super updateConstraints]
в конце Вашей реализации.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Обновляет ограничения для представления получения и его подпредставлений.
Объявление
Swift
func updateConstraintsForSubtreeIfNeeded()
Objective C
- (void)updateConstraintsForSubtreeIfNeeded
Обсуждение
Каждый раз, когда новая передача расположения инициирована для представления, система вызывает этот метод, чтобы гарантировать, что любые ограничения для представления и его подпредставлений обновляются с информацией от иерархии текущего представления и его ограничений. Если необходимо исследовать самые актуальные ограничения, этот метод вызывает автоматически система, но можно вызвать вручную.
Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Возвраты, зависит ли получатель от системы расположения на основе ограничений.
Объявление
Swift
class func requiresConstraintBasedLayout() -> Bool
Objective C
+ (BOOL)requiresConstraintBasedLayout
Возвращаемое значение
YES
true
если представление должно быть в окне с помощью расположения на основе ограничений для функционирования должным образом,NO
false
иначе.Обсуждение
Пользовательские представления должны переопределить это для возврата
YES
true
если они не могут расположение правильно с помощью автоизменения размеров.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Булево значение, указывающее, переводится ли маска автоизменения размеров представления в ограничения для системы расположения на основе ограничений.
Объявление
Swift
var translatesAutoresizingMaskIntoConstraints: Bool
Objective C
@property BOOL translatesAutoresizingMaskIntoConstraints
Обсуждение
Когда это свойство установлено в
YES
true
, суперпредставление представления смотрит на маску автоизменения размеров представления, производит ограничения, реализующие его, и добавляет те ограничения к себе (суперпредставление). Если Ваше представление имеет гибкие ограничения, требующие динамической корректировки, устанавливающие это свойство вNO
false
и примените ограничения сами.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
Дополнительную информацию см. в Автоматическом Руководстве по Расположению при отладке расположения на основе ограничений.
-
Возвращает ограничения, влияющие на расположение представления для данной ориентации.
Объявление
Swift
func constraintsAffectingLayoutForOrientation(_
orientation
: NSLayoutConstraintOrientation) -> [AnyObject]Objective C
- (NSArray *)constraintsAffectingLayoutForOrientation:(NSLayoutConstraintOrientation)
orientation
Параметры
orientation
Направление размерности, для которой должны быть найдены ограничения.
Возвращаемое значение
Ограничения, влияющие на расположение представления для указанной ориентации.
Обсуждение
Возвращенный набор ограничений может не все включать представление явно. Ограничения, влияющие на расположение представления неявно, могут также быть включены. В то время как это обеспечивает хорошую начальную точку для отладки, нет никакой гарантии, что возвращенный набор ограничений будет включать все ограничения, оказывающие влияние на расположение представления в данной ориентации.
Этот метод должен только использоваться для отладки расположения на основе ограничений. Никакое приложение не должно поставлять с вызовами к этому методу как часть его работы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
hasAmbiguousLayout hasAmbiguousLayout
СвойствоБулево значение, указывающее, указывают ли ограничения, влияющие на расположение представления не полностью, расположение представления. (только для чтения)
Объявление
Swift
var hasAmbiguousLayout: Bool { get }
Objective C
@property(readonly) BOOL hasAmbiguousLayout
Обсуждение
Значение этого свойства
YES
true
когда расположение или размер представления не могут быть определены окончательно на основе текущих ограничений.Доступ к этому свойству затрагивает механизм расположения, чтобы определить, удовлетворил ли бы какой-либо другой кадр также ограничения на представление. Поскольку этот процесс включает разметку представления, получение доступ к свойству может быть дорогой работой, но это может также обеспечить полезную отладочную информацию. Когда окно просят визуализировать его ограничения с помощью, AppKit автоматически вызывает этот метод
visualizeConstraints:
метод.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Случайным образом изменяет кадр представления с неоднозначным расположением между различными допустимыми значениями.
Объявление
Swift
func exerciseAmbiguityInLayout()
Objective C
- (void)exerciseAmbiguityInLayout
Обсуждение
Этот метод случайным образом изменяет кадр представления с неоднозначным расположением между его различными допустимыми значениями, заставляя представление переместиться в интерфейс. Это упрощает визуально идентифицировать то, что допустимые кадры и могут позволить разработчику различить, какие ограничения должны быть добавлены к расположению, чтобы полностью указать расположение для представления.
Этот метод должен только использоваться для отладки расположения на основе ограничений. Никакое приложение не должно поставлять с вызовами к этому методу как часть его работы.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Блокирует внимание на получатель, таким образом, последующие команды вступают в силу в оконной системе получателя и системе координат.
Объявление
Swift
func lockFocus()
Objective C
- (void)lockFocus
Обсуждение
Если Вы не используете a
display...
метод для рисованияNSView
объект, необходимо вызватьlockFocus
прежде, чем вызвать методы, которые отправляют команды в сервер окна и должны сбалансировать его сunlockFocus
сообщение по окончании.Сокрытие или миниатюризация окна с одним выстрелом заставляют запоминающее устройство для того окна быть выпущенным. Если Вы не используете стандартный механизм дисплея для рисования, необходимо использовать
lockFocusIfCanDraw
вместоlockFocus
в то время как окно или миниатюризировано или скрыто, если существует шанс рисования. Этот метод выдает исключение, если представление скрыто или если получение не может произойти по некоторой другой причине. Чтобы гарантировать, что можно заблокировать фокус успешно, удостоверьтесьcanDraw
свойствоYES
true
; можно также вызватьlockFocusIfCanDraw
вместо этого и использование возвращаемое значение того метода, чтобы определить, был ли фокус получен успешно.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Блокирует фокус к получателю атомарно если
canDraw
возвраты методаYES
true
и возвращает значениеcanDraw
.Объявление
Swift
func lockFocusIfCanDraw() -> Bool
Objective C
- (BOOL)lockFocusIfCanDraw
Обсуждение
Ваш поток не будет вытеснен другими потоками между
canDraw
метод и блокировка. Этому методу не удается заблокировать фокус и возвратыNO
false
, когда получатель скрыт, и текущий контекст рисует на экран (в противоположность контексту печати).Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Если получение может произойти в указанном графическом контексте, блокирует фокус к получателю атомарно.
Объявление
Swift
func lockFocusIfCanDrawInContext(_
context
: NSGraphicsContext) -> BoolObjective C
- (BOOL)lockFocusIfCanDrawInContext:(NSGraphicsContext *)
context
Параметры
context
Графический контекст, в котором могло бы произойти получение. Посмотрите обсуждение для импликаций типа контекста.
Возвращаемое значение
YES
true
если успешный; иначе, возвратыNO
false
.Обсуждение
Ваш поток не будет вытеснен другими потоками между
canDraw
метод и блокировка.Если
context
параметр представляет контекст для окна, содержащего представление, тогда все необходимые трансформации применяются. Это включает приложение границ получателя, и кадр преобразовывает вместе с любым, преобразовывает наследованный от его наследователей. Еслиcontext
указывает любой другой графический контекст, тогда только преобразование границ получателя применяется.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Разблокировал фокус от текущего представления.
Объявление
Swift
func unlockFocus()
Objective C
- (void)unlockFocus
Обсуждение
Вызовите этот метод после предыдущего вызова к
lockFocus
,lockFocusIfCanDraw
, илиlockFocusIfCanDrawInContext:
метод этого объекта представления. Выполнение так выпускает фокус от текущего представления и возвратов это назад к ранее фокусируемому представлению, если таковые имеются. Этот метод повышаетNSInvalidArgumentException
если текущее представление не имеет фокуса.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращается в настоящее время фокусируемый
NSView
объект, илиnil
если нет ни одного.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
focusRingType focusRingType
СвойствоТип фокусирующего кольца, нарисованного вокруг получателя.
Объявление
Swift
var focusRingType: NSFocusRingType
Objective C
@property NSFocusRingType focusRingType
Возвращаемое значение
enum
постоянная идентификация типа фокусирующего кольца. Возможные значения перечислены вNSFocusRingType
.Обсуждение
Используйте это свойство для указания типа фокусирующего кольца для рисования. Для списка возможных значений посмотрите
NSFocusRingType
.Для отключения получения фокусирующего кольца представления установите значение этого свойства к
NSFocusRingTypeNone
. Необходимо только отключить получение по умолчанию фокусирующего кольца представления, когда Вы хотите, чтобы представление нарисовало свое собственное фокусирующее кольцо. Например, Вы могли бы отключить получение фокусирующего кольца, когда представление использует свой цвет фона для указания фокуса или когда представление не имеет достаточного пространства для отображения фокусирующего кольца.Изменение значения в этом свойстве не заставляет представление рисовать фактическое фокусирующее кольцо. Вы ответственны за рисование фокусирующего кольца в drawRect Вашего представления: метод каждый раз, когда Ваше представление сделано первым респондентом.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
-
focusRingMaskBounds focusRingMaskBounds
СвойствоГраницы маски фокусирующего кольца, указанные в координатном пространстве представления. (только для чтения)
Объявление
Swift
var focusRingMaskBounds: NSRect { get }
Objective C
@property(readonly) NSRect focusRingMaskBounds
Обсуждение
Прямоугольник в этом свойстве указан относительно внутренней части представления (границы) координатное пространство. Границы маски позволяют полному размеру фокусирующего кольца и позиции быть определенным, прежде чем это будет нарисовано. Переопределите это свойство, если Ваше представление требует дисплея фокусирующего кольца. Значение по умолчанию этого свойства
NSZeroRect
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Рисует маску фокусирующего кольца для представления.
Объявление
Swift
func drawFocusRingMask()
Objective C
- (void)drawFocusRingMask
Обсуждение
Этот метод обеспечивает форму маски фокусирующего кольца путем рисования маски фокусирующего кольца. Реализация этого метода должна нарисовать во внутренней части представления (границы) координатное пространство, что стиль фокусирующего кольца был установлен (это будет установлено это в
NSFocusRingOnly
получать само фокусирующее кольцо), и что цвета заливки и цвета обводки были установлены в произвольный полностью непрозрачный цвет.Подклассы, считающие поведение по умолчанию недостаточным, должны только нарисовать форму фокусирующего кольца.
NSView
реализация этого метода просто заполняется[self bounds]
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
Вызванный для уведомления представления, что маска фокусирующего кольца требует обновления.
Объявление
Swift
func noteFocusRingMaskChanged()
Objective C
- (void)noteFocusRingMaskChanged
Обсуждение
Важно отметить, что только необходимо для разработчиков вызвать этот метод, когда некоторое изменение внутреннего состояния их приложения, что Набор Приложения не может определить, влияет на форму маски фокусирующего кольца.
Предполагается, что, если представление отмечено как нуждающийся в дисплее, или изменен, его форма фокусирующего кольца, вероятно, изменится, и нет никакой потребности в клиентах явно отправить это сообщение в таких случаях, они обрабатываются автоматически.
Если, однако, представление показывает фокусирующее кольцо вокруг некоторой части его содержания (
NSImage
, возможно), и что содержание изменяется, клиент должен обеспечить уведомление путем вызова этого метода так, чтобыfocusRingMaskBounds
иdrawFocusRingMask
будет вызван для перерисовки фокусирующего кольца.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Лишает законной силы область вокруг фокусирующего кольца.
Объявление
Swift
func setKeyboardFocusRingNeedsDisplayInRect(_
rect
: NSRect)Objective C
- (void)setKeyboardFocusRingNeedsDisplayInRect:(NSRect)
rect
Параметры
rect
Прямоугольник управления или ячейки, определяющей область вокруг фокусирующего кольца.
rect
будет расширен для включения фокусирующего кольца для аннулирования.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.1 и позже.
-
Возвращает тип фокусирующего кольца по умолчанию.
Объявление
Swift
class func defaultFocusRingType() -> NSFocusRingType
Objective C
+ (NSFocusRingType)defaultFocusRingType
Возвращаемое значение
Тип по умолчанию фокусирующего кольца для объектов класса получателя. Возможные возвращаемые значения перечислены в
NSFocusRingType
.Обсуждение
Если значение в
focusRingType
свойствоNSFocusRingTypeDefault
, представление может вызвать этот метод класса узнать, какое фокусирующее кольцо является значением по умолчанию. Представление свободно проигнорировать настройку по умолчанию.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
-
allowsVibrancy allowsVibrancy
СвойствоБулево значение, указывающее, гарантирует ли представление его, является вибрирующим поверх другого содержания. (только для чтения)
Объявление
Swift
var allowsVibrancy: Bool { get }
Objective C
@property(readonly) BOOL allowsVibrancy
Обсуждение
AppKit проверяет это свойство, когда представление включено в иерархию представления, использующую вибрацию. Если свойство
YES
true
, представление принимает надлежащие меры, чтобы гарантировать, что его содержание является вибрирующим поверх любого базового материала. Значение по умолчанию этого свойстваNO
false
. Однако некоторые подклассы представления AppKit изменяют значение этого свойства на основе иллюстраций, которые они рисуют.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Устанавливает получатель в полноэкранный режим.
Объявление
Swift
func enterFullScreenMode(_
screen
: NSScreen, withOptionsoptions
: [NSObject : AnyObject]?) -> BoolObjective C
- (BOOL)enterFullScreenMode:(NSScreen *)
screen
withOptions:(NSDictionary *)options
Параметры
screen
Экран получатель должен покрыть.
options
Словарь опций для режима. Для возможных ключей посмотрите
“Full Screen Mode Options”
.Возвращаемое значение
YES
true
если получатель смог перейти к полноэкранному режиму, иначеNO
false
.Обсуждение
Когда
NSFullScreenModeApplicationPresentationOptions
содержится в словаре опций, опции представления, имевшие силу, когда этот метод вызывается, не изменены, и никакие дисплеи не получены.Если Вы не хотите получать экран при движении в полноэкранный режим, можно добавить
NSFullScreenModeApplicationPresentationOptions
к словарю опций со значением, возвращеннымpresentationOptions
.Когда
NSFullScreenModeApplicationPresentationOptions
опции указаны, выйдя из полноэкранного использования режимаexitFullScreenModeWithOptions:
восстановит ранее активныйpresentationOptions
.Специальные замечания
На OS X v 10.5, вызывающем этот метод, когда получатель не был в окне, вызовет исключение. На OS X v 10.6 и позже, можно теперь отправить это сообщение в представление не в окне. Для приложений, которые должны также работать на OS X v 10.5, простое обходное решение должно поместить представление во внеэкранное фиктивное окно.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Дает получателю команду выходить из полноэкранного режима.
Объявление
Swift
func exitFullScreenModeWithOptions(_
options
: [NSObject : AnyObject]?)Objective C
- (void)exitFullScreenModeWithOptions:(NSDictionary *)
options
Параметры
options
Словарь опций для режима. Для возможных ключей посмотрите
“Full Screen Mode Options”
.Обсуждение
Когда
NSFullScreenModeApplicationPresentationOptions
опции указаны когдаenterFullScreenMode:withOptions:
вызывается, выходить из полноэкранного режима восстановит ранее активныйpresentationOptions
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
inFullScreenMode inFullScreenMode
СвойствоБулево значение, указывающее, является ли представление в полноэкранном режиме. (только для чтения)
Объявление
Swift
var inFullScreenMode: Bool { get }
Objective C
@property(getter=isInFullScreenMode, readonly) BOOL inFullScreenMode
Обсуждение
Значение этого свойства
YES
true
когда представление находится в полноэкранном режиме илиNO
false
когда это не.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Булево значение, указывающее, скрыто ли представление.
Объявление
Swift
var hidden: Bool
Objective C
@property(getter=isHidden) BOOL hidden
Обсуждение
Это свойство отражает состояние текущего представления только, как установлено в Интерфейсном Разработчике или через новое изменение в этом свойстве. Свойство не составляет состояние наследователей получателя в иерархии представления. Таким образом, если представление имеет скрытого наследователя, значение этого свойства может все еще быть
NO
false
даже при том, что само представление не видимо. Чтобы определить, скрыто ли представление эффективно по любой причине, получают значениеhiddenOrHasHiddenAncestor
свойство вместо этого.Скрытое представление исчезает из своего окна и не получает входные события. Это остается в списке его суперпредставления подпредставлений, однако, и участвует в автоизменении размеров, как обычно. AppKit также отключает любой прямоугольник курсора, прямоугольник подсказки или прямоугольник отслеживания, связанный со скрытым представлением. Сокрытие представления с подпредставлениями имеет эффект сокрытия тех подпредставлений и любых потомков представления, которых они могли бы иметь. Этот эффект неявен и не изменяет скрытое состояние потомков получателя, как сообщается этим свойством.
Сокрытие представления, которое является текущим первым респондентом окна, вызывает следующее допустимое ключевое представление представления (
nextValidKeyView
) стать новым первым респондентом. Скрытое представление остается вnextKeyView
цепочка представлений это было ранее частью, но проигнорировано во время перемещения с помощью клавиатуры.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Булево значение, указывающее, скрыто ли представление от вида, потому что это, или один из его наследователей, отмечено, как скрытый. (только для чтения)
Объявление
Swift
var hiddenOrHasHiddenAncestor: Bool { get }
Objective C
@property(getter=isHiddenOrHasHiddenAncestor, readonly) BOOL hiddenOrHasHiddenAncestor
Обсуждение
Значение этого свойства
YES
true
если значениеhidden
свойствоYES
true
для текущего представления или любого из его наследователей в иерархии представления. Это свойство не составляет другие причины, почему представление можно было бы считать скрытым, такой как располагаемый вне границ его суперпредставления, не имея окна, или находясь в окне, которое является внеэкранным или перекрывается другим окном.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Вызванный, когда получатель скрыт, или непосредственно, или в ответ на скрытого наследователя.
Объявление
Swift
func viewDidHide()
Objective C
- (void)viewDidHide
Обсуждение
Получатель получает это сообщение когда
hiddenOrHasHiddenAncestor
свойство изменяется отNO
false
кYES
true
. Это происходит, когда представление или наследователь отмечены, как скрытый, или когда представление или наследователь введены в новую иерархию представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
Вызванный, когда получатель выводится на экран, или непосредственно, или в ответ на выводимого на экран наследователя
Объявление
Swift
func viewDidUnhide()
Objective C
- (void)viewDidUnhide
Обсуждение
Когда его isHiddenOrHasHiddenAncestor состояние идет от, получатель получает это сообщение
YES
true
кNO
false
. Это может произойти, когда представление или наследователь отмечены как не скрытый, или когда представление или наследователь удалены из его содержания иерархии представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.5 и позже.
-
inLiveResize inLiveResize
СвойствоБулево значение, указывающее, представляется ли представление как часть живой работы изменения размеров. (только для чтения)
Объявление
Swift
var inLiveResize: Bool { get }
Objective C
@property(readonly) BOOL inLiveResize
Обсуждение
AppKit устанавливает значение этого свойства к
YES
true
когда живая работа изменения размеров, включающая представление, в стадии реализации. Используйте это свойство для определения, когда оптимизировать поведение получения представления. Как правило, Вы получаете доступ к этому свойству от ВашегоdrawRect:
метод и использование значение для изменения точности содержания Вы рисуете, или нарисовать Ваше содержание более эффективно.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.1 и позже.
-
Булево значение, указывающее, оптимизирует ли представление живой - изменяет размеры операций путем сохранения не переместившегося содержания. (только для чтения)
Объявление
Swift
var preservesContentDuringLiveResize: Bool { get }
Objective C
@property(readonly) BOOL preservesContentDuringLiveResize
Обсуждение
Значение по умолчанию этого свойства
NO
false
. Если Ваше сохранение содержания поддержек представления, переопределите это свойство и возвратYES
true
. Сохранение содержания позволяет Вашему представлению решить, что перерисовать во время живого, изменяют размеры работы. Если Ваше представление поддерживает эту функцию, необходимо также обеспечить пользовательскую реализациюsetFrameSize:
метод, лишающий законной силы части Вашего представления, которое фактически должно быть перерисовано.Для получения информации о том, как реализовать эту опцию в Ваших представлениях, см. Инструкции по Производительности Какао.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает список прямоугольников, указывающих недавно представленные области получателя.
Объявление
Параметры
exposedRects
По возврату, содержит список прямоугольников. Возвращенные прямоугольники находятся в координатном пространстве получателя.
count
Содержит число прямоугольников в
exposedRects
; это значение может быть 0 и, как гарантируют, будет не больше, чем 4.Обсуждение
Если Ваше представление не делает сохранения содержания поддержки во время живого изменения размеров, вся область Вашего представления возвращается в
exposedRects
параметр. К сохранению содержания поддержки переопределитеpreservesContentDuringLiveResize
свойство в Вашем представлении и имеет Ваш возврат реализацииYES
true
.Если представление уменьшилось и в высоте и в ширине, список возвращенных прямоугольников будет пуст. Если представление увеличилось и в высоте и в ширине, и ее верхний левый угол остался привязанным в той же позиции, список возвращенных прямоугольников будет содержать вертикальную и горизонтальную составляющую, указывающую представленную область.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
-
Прямоугольник, идентифицирующий часть Вашего представления, не изменявшегося во время живого, изменяет размеры работы. (только для чтения)
Объявление
Swift
var rectPreservedDuringLiveResize: NSRect { get }
Objective C
@property(readonly) NSRect rectPreservedDuringLiveResize
Обсуждение
Прямоугольник в этом свойстве находится в системе координат Вашего представления и отражает пространство Ваше представление, ранее занятое. Этот прямоугольник может быть меньшим или тот же размер как текущие границы Вашего представления, в зависимости от того, росло ли представление или уменьшенный.
Если Ваше представление не сделает сохранения содержания поддержки во время живого изменения размеров, то прямоугольник будет пуст. К сохранению содержания поддержки переопределите
preservesContentDuringLiveResize
свойство в Вашем представлении и имеет Ваш возврат реализацииYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.
-
Сообщает, что получатель запуска живого изменяет размеры.
Объявление
Swift
func viewWillStartLiveResize()
Objective C
- (void)viewWillStartLiveResize
Обсуждение
В простом случае отправляется представление
viewWillStartLiveResize
прежде чем первые изменяют размеры работы на содержании окна иviewDidEndLiveResize
после того, как последние изменяют размеры работы. Представление, неоднократно добавляющееся и удаляющееся из окна во время живого, изменяет размеры, получит только одинviewWillStartLiveResize
(на первом разе это добавляется к окну), и одинviewDidEndLiveResize
(когда окно завершилось, живые изменяют размеры работы). Это позволяет суперпредставление такой какNSBrowser
объект добавить и удалитьNSMatrix
подпредставления во время живого изменяют размеры безNSMatrix
объект, получающий множественные вызовы этих методов.Представление могло бы выделить структуры данных рисующей кэш информации в
viewWillStartLiveResize
и должен очистить эти структуры данных вviewDidEndLiveResize
. Кроме того, представление, делающее оптимизированное получение во время живого, изменяет размеры, мог бы хотеть сделать полное получение послеviewDidEndLiveResize
, несмотря на то, что представление не должно предполагать, что имеет контекст получения вviewDidEndLiveResize
(так как это, возможно, было удалено из окна во время живого, изменяют размеры). Представление, хотящее перерисовать себя после живой, изменяет размеры, должен вызвать[self setNeedsDisplay:YES]
вviewDidEndLiveResize
.Подкласс представления должен вызвать
super
от этих методов.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.1 и позже.
См. также
-
Сообщает, что получатель конца живого изменяет размеры.
Объявление
Swift
func viewDidEndLiveResize()
Objective C
- (void)viewDidEndLiveResize
Обсуждение
В простом случае отправляется представление
viewWillStartLiveResize
прежде чем первые изменяют размеры работы на содержании окна иviewDidEndLiveResize
после того, как последние изменяют размеры работы. Представление, неоднократно добавляющееся и удаляющееся из окна во время живого, изменяет размеры, получит только одинviewWillStartLiveResize
(на первом разе это добавляется к окну), и одинviewDidEndLiveResize
(когда окно завершилось, живые изменяют размеры работы). Это позволяет суперпредставление такой какNSBrowser
объект добавить и удалитьNSMatrix
подпредставления во время живого изменяют размеры безNSMatrix
получение множественных вызовов этих методов.Представление могло бы выделить структуры данных рисующей кэш информации в
viewWillStartLiveResize
и должен очистить эти структуры данных вviewDidEndLiveResize
. Кроме того, представление, делающее оптимизированное получение во время живого, изменяет размеры, мог бы хотеть сделать полное получение послеviewDidEndLiveResize
, несмотря на то, что представление не должно предполагать, что имеет контекст получения вviewDidEndLiveResize
(так как это, возможно, было удалено из окна во время живого, изменяют размеры). Представление, хотящее перерисовать себя после живой, изменяет размеры, должен вызвать[self setNeedsDisplay:YES]
вviewDidEndLiveResize
.Подкласс представления должен вызвать
super
от этих методов.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.1 и позже.
См. также
-
gestureRecognizers gestureRecognizers
СвойствоЖест распознает объекты, в настоящее время присоединяемые к представлению.
Объявление
Swift
var gestureRecognizers: [AnyObject]
Objective C
@property(copy) NSArray *gestureRecognizers
Обсуждение
Объекты в массиве являются конкретными реализациями
NSGestureRecognizer
класс. Если представление не имеет никаких присоединенных устройств распознавания жеста, массив пуст.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Присоединяет устройство распознавания жеста к представлению.
Объявление
Swift
func addGestureRecognizer(_
gestureRecognizer
: NSGestureRecognizer)Objective C
- (void)addGestureRecognizer:(NSGestureRecognizer *)
gestureRecognizer
Параметры
gestureRecognizer
Устройство распознавания жеста для присоединения к представлению. Этот параметр не должен быть
nil
.Обсуждение
Присоединение устройства распознавания жеста к представлению определяет объем представленного жеста, заставляя его получить касания, происходящие только в представлении или одном из его подпредставлений. Представление устанавливает сильную ссылку к указанному устройству распознавания жеста.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Отсоединяет устройство распознавания жеста от представления.
Объявление
Swift
func removeGestureRecognizer(_
gestureRecognizer
: NSGestureRecognizer)Objective C
- (void)removeGestureRecognizer:(NSGestureRecognizer *)
gestureRecognizer
Параметры
gestureRecognizer
Устройство распознавания жеста для удаления. Этот параметр не должен быть
nil
.Обсуждение
Удаление устройства распознавания жеста также удаляет сильную ссылку к сохраненному представлением.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.10 и позже.
-
Переопределенный подклассами для возврата
YES
true
если получатель должен быть отправлен amouseDown:
сообщение для начального события mouseDown,NO
false
если нет.Объявление
Swift
func acceptsFirstMouse(_
theEvent
: NSEvent) -> BoolObjective C
- (BOOL)acceptsFirstMouse:(NSEvent *)
theEvent
Параметры
theEvent
Начальное событие mouseDown, которое должно быть по получателю в его окне.
Обсуждение
Получатель может или возвратить значение безусловно или использовать расположение
theEvent
определить, хочет ли это событие. Реализация по умолчанию игнорируетtheEvent
и возвратыNO
false
.Переопределите этот метод в подклассе, чтобы позволить экземплярам реагировать на щелчок - через. Это позволяет пользователю щелкать по представлению в неактивном окне, активируя представление одним щелчком, вместо того, чтобы щелкнуть сначала, чтобы сделать окно активным и затем щелкнуть по представлению. Объекты представления Most отказываются от щелчка - посредством попытки, таким образом, событие просто активирует окно. Много объектов управления, однако, таких как экземпляры
NSButton
иNSSlider
, действительно примите их, таким образом, пользователь может сразу управлять управлением, не имея необходимость отпускать кнопку мыши.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает самого дальнего потомка получателя в иерархии представления (включая себя), который содержит указанную точку, или
nil
если та точка находится полностью вне получателя.Объявление
Objective C
- (NSView *)hitTest:(NSPoint)
aPoint
Параметры
aPoint
Точка, которая находится в системе координат суперпредставления получателя, не самого получателя.
Возвращаемое значение
Объект представления, который является самым дальним потомком
aPoint
.Обсуждение
Этот метод используется прежде всего
NSWindow
объект определить, какое представление должно получить событие mouseDown. Необходимо было бы редко вызывать этот метод, но Вы могли бы хотеть переопределить его для имения объекта представления, скрывают события mouseDown от его подпредставлений. Этот метод игнорирует скрытые представления.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
-
Возвраты, содержит ли область получателя указанную точку, составляя, зеркально отражается ли получатель или нет.
Объявление
Параметры
aPoint
Точка, выраженная в системе координат получателя. Эта точка обычно представляет горячую точку курсора мыши.
aRect
Прямоугольник, выраженный в системе координат получателя.
Возвращаемое значение
YES
true
еслиaRect
содержитaPoint
,NO
false
иначе.Обсуждение
Функции точки в прямоугольнике обычно предполагают, что базовый край прямоугольника за пределами прямоугольных границ, в то время как верхний край в границах. Этот метод представления
aRect
с точки зрения пользователя — т.е. этот метод всегда обрабатывает базовый край прямоугольника как одно самое близкое к базовому краю экрана пользователя. Путем внесения этой корректировки эта функция гарантирует непротиворечивое поведение обнаружения мыши с точки зрения пользователя.Никогда не используйте Основу
NSPointInRect
функция вместо этого метода. Это не составляет зеркально отраженные системы координат.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– hitTest:
зеркально отраженный
NSMouseInRect
(Функции основы)– convertPoint:fromView:
-
Реализованный подклассами для ответа на ключевые эквиваленты (также известный как сочетания клавиш).
Объявление
Swift
func performKeyEquivalent(_
theEvent
: NSEvent) -> BoolObjective C
- (BOOL)performKeyEquivalent:(NSEvent *)
theEvent
Параметры
theEvent
Ключевой вниз объект-событие, представляющий ключевой эквивалент.
Возвращаемое значение
YES
true
еслиtheEvent
ключевой эквивалент, который получатель обработал,NO
false
если это не ключевой эквивалент, который это должно обработать.Обсуждение
Если ключевой эквивалент получателя совпадает с символами ключевого вниз события
theEvent
, как возвращеноcharactersIgnoringModifiers
, получатель должен принять соответствующие меры и возвратYES
true
. Иначе, это должно возвратить результат вызоваsuper
реализация. Реализация по умолчанию этого метода просто передает сообщение вниз иерархия представления (от суперпредставлений до подпредставлений) и возвратыNO
false
если ни одно из подпредставлений получателя не отвечаетYES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
keyDown:
(NSWindow
) -
Сообщает получателю, что пользователь нажал правую кнопку мыши.
Объявление
Objective C
- (void)rightMouseDown:(NSEvent *)
theEvent
Параметры
theEvent
Информация об инкапсуляции объекта о событии mouseDown.
Обсуждение
Вызовы