Скрыть выходы из Connections Inspector для пользовательского просмотра
Я создал пользовательское представление (просмотр количества) с nib
файлом в Swift. Я создал некоторые IBOutlets
и IBActions
(для кнопок, меток и т.д.) В своем пользовательском представлении.
Я попытался использовать это пользовательское представление (количество просмотров), присвоив имя класса UIView
в моей раскадровке.
Он показывает мне все IBOutlets
и IBActions
в инспекторе соединений, как показано на этом скриншоте:
.
Я просто хочу показать только delegate
для пользовательского представления.
Возможный ответ:
Я думал, что могу использовать -viewWithTag
для получения представлений вместо Outlets.
Но, я хочу знать, возможно ли это с наличием Outlets или если есть намного лучший способ сделать это?
Каковы другие возможные способы (оптимальные) для обработки этой ситуации?
Ответы
Ответ 1
Вы также можете рассмотреть следующее решение:
Вы можете взять подзаголовки вашего QuantityViews (пользовательский вид), и вы можете определить конкретные представления по его началу кадра.
Примечание: вы должны знать рамку календаря customview
Ответ 2
Невозможно скрыть IBOutlets из раскадровки, если вы объявите членов класса IB (IBOutlets или IBActions).
IBOutlets или IBActions являются просто индикаторами для построителя интерфейсов, так что он может отображать имена на нем при попытке связать их, на самом деле он вызывает метод setValue: forKey: для установки ссылки вида на свойство IBOutlet.
Теперь, если вы попытаетесь получить доступ к подзону из класса владельца файла без каких-либо IBoutlets, вам нужно указать указатель, чтобы указать его, так что для этого вы можете получить ссылку с помощью ObjectID, которая назначена подвью для интерфейса-построителя или вы можете получить его с помощью метода viewWithTag:.
ObjectID вам нужно найти все время, когда вы добавляете или заменяете subview из представления, поэтому лучший и удобный подход - использовать свойство тега класса UIView.
Итак, мой вывод к этой проблеме - получить доступ к представлениям, используя метод viewWithTag, о котором вы говорили ранее.
Ответ 3
Я думаю, что ваш путь верен. Но иногда Xcode работает неправильно.
Ниже перечисляются и работают IBOutlets и IBActions:
-
Очистите проект своего проекта в Xcode.
-
Закройте Xcode полностью.
-
Удалить все содержимое ~/Library/Developer/Xcode/DerivedData/.
-
Перезагрузите MacOS на всякий случай.
Надеюсь, вы решите следующее:)