Какая разница между UIControlStateHighlighted и UIControlStateSelected?

Я пытаюсь установить состояние для UIButton.

Но я не знаю разницы между UIControlStateHighlighted и UIControlStateSelected.

Может ли кто-нибудь помочь мне?

Спасибо и с наилучшими пожеланиями.

Ответ 1

Они могут означать, что вы хотите, но в целом они означают следующее:

Выделено = Пользователь в настоящее время взаимодействует с чем-то, что изменится после прекращения взаимодействия (например, нажатие кнопки)

Выбран = Элемент является текущим активным элементом в группе (например, выбранный элемент в сегментированном элементе управления). Это может быть достигнуто только путем его программного программирования.

Ответ 2

  • UIControlStateHighlighted= он выделяет кнопку с некоторой вспышкой (на фоне кнопки), когда пользователь меткает.

  • UIControlStateSelected= он ничего не выделяет для этой кнопки.

Ответ 3

Из официального документа:

UIControlStateHighlighted Выделенное состояние элемента управления. Контроль входит в это состояние, когда прикосновение входит и выходит во время отслеживания и когда происходит событие касания. Вы можете получить и установить это значение через выделенное свойство.

UIControlStateSelected Выбранное состояние элемента управления. Для многих элементов управления, это состояние не влияет на поведение или внешний вид. Но другие подклассы (например, класс UISegmentedControl) могут иметь различный внешний вид в зависимости от выбранного состояния. Ты можешь получить и установить это значение через выбранное свойство.

Ваша кнопка получает highlighted в ответ на событие касания. Затем он может находиться в состоянии selected внутри группы (для сегментированного управления).

Ответ 4

Подчеркнутый обычно применяется временно, когда элемент управления затрагивается, выбранный является более постоянным. Представьте себе кнопку типа флажка, которая затемнялась во время ее касания - подсвечивание подсвечивается, выбирается отметка, неакцептанный не выбран.

Как правило, вы никогда не устанавливали выделенный статус вручную, так как система будет устанавливать/устранять его в ответ на касания, тогда как выбранный является более безопасным. Это особенно касается кнопок.