Ответ 1
Вы также можете установить
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints"];
в ApplicationDidFinishLaunching.
Я получаю следующее сообщение из Cocoa Механизм автоматической компоновки:
Установите NSUserDefault NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints в YES, чтобы - [NSWindow visualizeConstraints:] автоматически вызывается, когда это происходит.
Но я не знаю, как "Установить NSUserDefault NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints в YES".
Как это установить?
Вы также можете установить
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints"];
в ApplicationDidFinishLaunching.
Вы можете настроить параметры для конкретной схемы следующим образом:
1) Выберите схему из всплывающего меню и выберите "Редактировать схему...
2) В следующем слайд-шоу добавьте новую запись в Аргументы, переданные при запуске.
Скопируйте и вставьте следующую строку.
-NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints YES
В предыдущих ответах много хороших предложений, но все они должны быть повторены для каждого приложения, которое вы разрабатываете, даже для быстрого одноразового использования, чтобы опробовать идею.
Если вы хотите, чтобы он был включен по умолчанию для всех приложений и всех пользователей, вы можете установить его в своей базе данных по умолчанию, введя следующую команду в терминал:
defaults write -globalDomain NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints YES
Вы можете проверить справочную страницу для вариантов темы, например, если вы хотите, чтобы она была более ограниченной по охвату.
Одним из недостатков сохранения этой настройки является то, что программное обеспечение других людей внезапно выделяется для двусмысленных макетов - даже порой от самого Apple.
Поэтому вы можете снова отключить его для периодов. Команда для этого довольно проста:
defaults write -globalDomain NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints NO
И только для того, чтобы быть ясным: параметр, введенный в терминал, применяется только к рассматриваемой машине, поэтому конечные пользователи не получат настройки. Это также означает, что бета-тестеры не будут видеть фиолетовую тень, которая может быть или не быть тем, что вы хотите.
Swift 3.0
UserDefaults.standard.set(true, forKey: "NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints")
Просто добавьте его в качестве аргумента при запуске приложения из командной строки или в настройках схемы в Xcode.