Мне нужно определить, является ли Uiview стандартным открытым представлением или если это активированный видовой экран на листе. Запрос идентификатора uiview Id возвращает Id из окна активированного вида просмотра. Я не нашел прямого способа обнаружить, что uiview на самом деле является листом с активированным окном просмотра.Как я могу определить, что uiview - это активированный видовой экран
Я уже отслеживаю открытые виды в режиме активированного события для другой цели. Поэтому я рассмотрел возможность хранения идентификатора представления с хэш-кодом uiview для последующей проверки того, что он действительно был просмотром листа перед тем, как стать активированным представлением. К сожалению, и я думаю, что в отличие от стандартного использования, хэш-код uiview нестабилен. Несколько запросов хэш-кода из объекта uiview возвращают разные значения.
У кого-нибудь есть способ обнаружить это состояние? Мне нужно иметь возможность использовать методы на uiview. Поэтому любая помощь в поиске реальных дочерних окон, которые я хотел бы связать с объектом uiview. В представлении показывается «Лист: ...» в заголовке, когда открывается представление.
Hashcode не является стабильным, потому что, когда вы получаете UIView, это управляемая оболочка, которая герметизирующая собственный объект. Каждый раз, когда вы запрашиваете его, создается новая оболочка. И даже если он был стабильным, хеши не гарантированы быть уникальными (он просто используется для помещения предметов в отсеки). – Maxence
Кажется невозможным использовать неустойчивый хэш-код для хранения, сравнения и т. Д. Но я понимаю, что объект, который я получаю, не является одним и тем же обтекающим объектом каждый раз. Спасибо. –