Вы можете проверить, что пересечение фреймов двух видов равно нулю.Используйте метод frame
в классе UIView, чтобы получить кадр CGRect для каждого представления, затем вызовите CGRectIntersection
, чтобы найти область перекрытия прямоугольников, если таковая имеется.Если они не касаются, пересечение будет нулевым прямоугольником (то есть вернет true для CGRectIsNull
).
Код, не проверенный:
// Given UIView * letter, * holder:
CGRect letterFrame = [letter frame];
CGRect holderFrame = [holder frame];
CGRect intersection = CGRectIntersection(letterFrame, holderFrame);
if(CGRectIsNull(intersection)) {
// Not touching yet - null intersection
} else {
// Touching! Do something here
}