Как мне добавить всплывающую подсказку для UIButton?

#xcode #uibutton

#xcode #uibutton

Вопрос:

Существует ли свойство всплывающей подсказки для экземпляра UIButton, которое будет отображать текст при наведении курсора мыши на кнопку?

Комментарии:

1. Как вы планируете использовать мышь в iPhone? Если вы объясните немного подробнее, чего вы пытаетесь достичь, тогда вы можете получить лучшие решения.

Ответ №1:

UIButton — это класс iOS.
Мыши нет.

Комментарии:

1. Я думаю, что он использовал Simulator : D

2. Что касается 2011 года, то в iOS действительно нет мыши, но теперь, когда у нас есть Catalyst, который позволяет запускать приложения ios на macOS, у нас есть мышь. Для использования событий мыши мы можем использовать «addGestureRecognizer»

Ответ №2:

Поскольку в IOS нет мыши, в UIButton нет свойства «наведение курсора мыши» или всплывающей подсказки.

Но вы могли бы попробовать смоделировать ее с помощью обработки событий.

Если пользователь касается кнопки и удерживает палец, отображается текст. Если пользователь нажимает, ему нравится выбирать кнопку. Если пользователь выходит за пределы кнопки и заканчивает касание там, всплывающая подсказка скрывается.

Проверьте UIControlEvent для UIButton, т.Е. «Коснитесь внутри», «Коснитесь перетаскивания Enter», «Коснитесь перетаскивания Exit»

Ответ №3:

Это правда, что в iOS нет мыши, но теперь, когда у нас есть Catalyst, который позволяет запускать приложения ios на macOS, у нас есть мышь.

Для любого пользовательского интерфейса вы можете использовать :

 addGestureRecognizer(UIHoverGestureRecognizer(target: self, action: #selector(hoverEvent(_:))))
  

и делайте то, что вы хотите в реализации, например :

     @objc
func hoverEvent(_ sender: UIHoverGestureRecognizer? = nil) {
    
    switch sender?.state {
    case .began, .changed:
        myButton.isHidden = false
    case .ended, .cancelled, .failed, .possible:
        myButton.isHidden = true
    default:
        break
    }
}