Junior — Middle
Kako aplikacija određuje koji deo interfejsa treba da reaguje na dodir?
sobes.tech АИ
Одговор од АИ
У iOS се користи механизам hit-testing за одређивање који део интерфејса треба да реагује на додир. Када корисник додирне екран, систем почиње од кореновог приказа (UIView) и рекурзивно проверава који под-вид је испод тачке додира.
Процес укључује следеће кораке:
- Систем позива метод
hitTest(_:with:)на кореновом UIView-у, преносећи координате додира. - UIView проверава да ли је тачка додира унутар његових граница (
point(inside:with:)). Ако није, враћа nil. - Ако јесте, UIView пролази кроз своје под-видове у обрнутом редоследу (од врха према дну) и позива их
hitTest(_:with:). - Ако неки под-вид врати не nil, то значи да он треба да обради додир.
- Ако ниједан под-вид није погодан, враћа се сам UIView.
На овај начин, апликација прецизно одређује који елемент интерфејса је испод прста корисника и спреман да прими догађај.