Mam problem z wykryciem przecięcia obiektów UIView
.Wykrywanie przecięcia dwóch obiektów UIView przy innym widoku podglądu
To co Użyłem poniżej:
Na skrzyżowaniu dwóch przedmiot muszę dowiedzieć się, jak przetłumaczyć jednego układu współrzędnych od pierwszego SuperView do innego układu współrzędnych.
Użyłem tego podejścia: - (CGRect)convertRect:(CGRect)rect fromView:(UIView *)view
opisane tutaj link.
Jak wiem, bardzo łatwo jest użyć tej metody. Ale w różnych przypadkach jest to trudne ze względu na mały opis w dokumentacji (ale może tylko dla mnie).
To jest moja struktura subviews, która jest pokazana na obrazku poniżej. Mam już wszystkie metody dla obiektu typu "przeciągnij i upuść". Ale muszę wymyślić, jak uzyskać przecięcie dla A i B . Dzięki za pomoc.
mógłbyś opisać hierarchię bardziej szczegółowo? Czy pojedynczy widok superwizyjny zawiera oba widoki A i B? –
+1 za pochylenie perspektywy na ilustracji – Till
dzięki za odpowiedzi. więc o superviewie - istnieją dwa różne suporty do widoków A i B. Kiedy przeciągam widok B, współrzędne zmieniają się tylko w powiązaniu z podglądem, w którym jest umieszczony widok B. Aby przetłumaczyć współrzędne B na współrzędne, w których jest umieszczony widok A, potrzebuję użyć jednej z wielu deklarujących metodę convertRect w klasie UIView, po tym muszę uzyskać przecięcie z przekonwertowanymi współrzędnymi i widokiem A rect. Bardzo proste do zrozumienia, ale niezbyt łatwe do zrobienia tego) –