/ / Dotyki nie działają na UITableView wewnątrz UIScrollView - ios, swift, uitableview, uiscrollview, uicontainerview

Dotyki nie działają na UITableView wewnątrz UIScrollView - ios, swift, uitableview, uiscrollview, uicontainerview

Mam ten dziwny problem. Aby zacząć wszystko, tak wygląda moja hierarchia widoków wygląda jak:

mam UIViewController z a UIScrollView z trzema oddzielnymi ContainerView"s w środku tego. Każdy z ContainerView"s frames (i odpowiednie UIViewControllers) są ustawione programowo.

Otwieram drugi ContainerView z a UIView.animate(...) metoda. Wewnątrz tego UIView/UIViewController mam UITableView. Problem polega na tym, że tylko pierwsza piątka (i połowa szóstej z jakiegoś powodu, ale może to jest wskazówka) UITableViewCell"s można wybierać. Mam około pięciu więcej UITableViewCell"s który z jakiegoś powodu nie można wybrać.

Nie mam żadnych UITapGestureRecognizer"s co było problemem dla niektórych innych osób, które widziałem, a także, jeśli dodam TouchesBegan do albo UITableView albo UIViewController trzymając go, zachowuje się w ten sam sposób. To powie, że wydrukuje się tylko wtedy, gdy dotknę tej samej części ekranu, na której znajduje się UITableViewCell"s można wybierać.

Czy jest ktoś, kto napotkał ten sam problem lub coś podobnego, co może rzucić trochę światła na to?

Każda pomoc, wkład lub myśl jest bardzo doceniana.

Odpowiedzi:

0 dla odpowiedzi № 1

Więc rozwiązałem ten problem. Dla każdego, kto ma podobne problemy, było to spowodowane tym, że podstawowy contentView UISrollView nie był wystarczająco duży.

Nawet jeśli UITableView, a nawet widoczne pod nim widoki były widoczne, dotyki nie mogły go dosięgnąć, ponieważ są one w jakiś sposób zarejestrowane przez UIScrollView contentView (dla mnie to był UIView Dodałem w Konstruktorze interfejsów na górze UIScrollView).

Ponadto, jeśli pracujesz z funkcją autoLayout, musisz zmienić ograniczenia contentViews w Konstruktorze interfejsów UIScrollView.contentSize nie zada sobie trudu, aby słuchać twoich poleceń.