Jaki jest najprostszy i najbardziej elegancki sposób, aby sprawdzić, czy UIView jest widoczny na bieżącym contentView UIScrollView? Można to zrobić na dwa sposoby: jednym z nich jest pozycja contentOffset.y w UIScrollView, a drugą metodą jest konwersja obszaru rect?Sprawdź, czy UIView jest w UIScrollView widoczny stan
14
A
Odpowiedz
1
Myślę, że twoje pomysły są poprawne. jeśli to ja chciałbym to zrobić w następujący sposób:
//scrollView is the main scroll view
//mainview is scrollview.superview
//view is the view inside the scroll view
CGRect viewRect = view.frame;
CGRect mainRect = mainView.frame;
if(CGRectIntersectsRect(mainRect, viewRect))
{
//view is visible
}
5
Wdrożenie scrollViewDidScroll:
w widoku przewijania delegata i obliczyć ręcznie, które widoki są widoczne (na przykład przez sprawdzenie czy CGRectIntersectsRect(scrollView.bounds, subview.frame)
zwraca true
15
Jeśli próbujesz. wypracować jeśli widok został przewijane na ekranie, spróbuj tego:
CGRect thePosition = myView.frame;
CGRect container = CGRectMake(scrollView.contentOffset.x, scrollView.contentOffset.y, scrollView.frame.size.width, scrollView.frame.size.height);
if(CGRectIntersectsRect(thePosition, container))
{
// This view has been scrolled on screen
}
0
aktualizowane na szybki 3
var rect1: CGRect!
// initialize rect1 to the relevant subview
if rect1.frame.intersects(CGRect(origin: scrollView.contentOffset, size: scrollView.contentSize)) {
// the view is visible
}
Powiązane problemy
- 1. Ustal, czy podgląd jest widoczny w UIScrollView
- 2. Sprawdź, czy dotknięte jest UIView?
- 3. Android: Sprawdź, czy fragment jest widoczny.
- 4. Sprawdź, czy element div jest widoczny w oknie?
- 5. jQuery - Sprawdź, czy div dziecka jest widoczny
- 6. Sprawdź, czy pasek stanu jest ukryty lub widoczny.
- 7. Dodaj UIScrollView w UIView programowo
- 8. Sprawdź, czy tabBar jest widoczny w aplikacji iOS
- 9. Wykonywanie UIView Przewijanie bez UIScrollView
- 10. Sprawdź, czy cały div jest widoczny dla użytkownika.
- 11. Sprawdź, czy element jest widoczny dla użytkownika na stronie html.
- 12. Sprawdź, czy co najmniej jeden element jest widoczny
- 13. UIView nieprzestrzeganie ograniczeń autolayout w UIScrollView
- 14. Sprawdź stan AutoResetEvent
- 15. UIScrollView bloków zdarzeń przewijania UIView animacji
- 16. Jak utworzyć obraz z UIView/UIScrollView
- 17. Wykryj zdarzenie dotykowe na UIScrollView ORAZ na komponentach UIView [który jest umieszczony wewnątrz UIScrollView]
- 18. Czy generator.next() jest widoczny w pythonie 3.0?
- 19. iOS: Zmiana podklasy z UIView na UIScrollView w storyboardie
- 20. UIView drawRect: czy możliwe jest uderzenie w ścieżkę?
- 21. sprawdź stan połączenia elasticsearch w pythonie
- 22. Sprawdź stan wifi w aplikacji Blackberry
- 23. Jak sprawdzić, czy NSWindow jest widoczny?
- 24. Czy stan HashAlgorithm.ComputeHash() jest stanowy?
- 25. wykryć, czy element jest naprawdę widoczny
- 26. Sprawdź, czy jest fałsz.
- 27. UITextView wewnątrz UIScrollView wewnątrz Popover nie jest w pełni widoczny po wyświetleniu klawiatury
- 28. UIView na szczycie UIScrollView, przechodzą przez zaledwie przewija, nie krany
- 29. JQuery - Sprawdź, czy obraz jest załadowany?
- 30. Sprawdź, czy zainstalowana drukarka sieciowa jest online