Ich erstelle dynamisch eine scrollView und habe ein Seitensteuerelement damit verbunden. Ich habe ein Array von Schaltflächen, und diese Schaltflächen werden der Scroll-Ansicht dynamisch hinzugefügt.Während die Schaltflächen thats sind in der ersten Seite hinzugefügt werden sichtbar, einige Schaltflächen sind nicht sichtbar, aber sie werden der Scroll-Ansicht hinzugefügt.UIButton nicht sichtbar in UIScrollView mit UIPageControl - Swift 3
UIScrollView frame = CGRect (x: 0, y: 0, Breite: 340, Höhe: 150) scrollView.contentSize = CGSize (Breite: scrollView.frame.size.width * CGFloat (Seite), Höhe: Scroll .frame.size.height)
In meinem Fall habe ich 2 Seiten, also die Breite des Inhalts ist 680. Beim Scrollen der Ansicht ist der Inhalt Offset der Bildlaufansicht 340, obwohl die Schaltflächen unsichtbar sind sind innerhalb der contentSize, die Tasten sind immer noch nicht sichtbar,
Folgende sind die Frames der Schaltfläche, die nicht sichtbar sind,
<UIButton: 0x7ffdf0f26bb0; frame = (355 10; 62 32); opaque = NO; layer = <CALayer: 0x610000030840>>,
<UIButton: 0x7ffdf0f27110; frame = (427 10; 98 32); opaque = NO; layer = <CALayer: 0x610000030960>>,
<UIButton: 0x7ffdf0f27670; frame = (535 10; 112 32); opaque = NO; layer = <CALayer: 0x610000030a80>>
Soweit Seitenkontrolle betrifft, sehe ich das gleiche Verhalten in der Scrollview, auch wenn ich die Seitensteuerung entfernen. Ich bin mir nicht sicher, ob ich nach etwas Bestimmtem auf dem scrollview überprüfen muss.
@IBAction func changePage(sender: UIPageControl) ->() {
let x = CGFloat(pageControl.currentPage + 1) * scrollView.frame.size.width
scrollView.setContentOffset(CGPoint(x: x,y :scrollView.frame.size.height), animated: true)
}
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
let pageNumber = round(scrollView.contentOffset.x/scrollView.frame.size.width)
pageControl.currentPage = Int(pageNumber)
}