Я пытаюсь добавить UIScrollView()
в одну из ячеек таблицы. У меня возникают трудности с выяснением того, какие методы ставят код для просмотра прокрутки.UIScrollView в UITableViewCell в Swift
У меня есть мнение прокрутки в другом месте в моем приложении, и это код, который я использовал перемещаемый через к моим UITableView()
зрению, как я предположил, что это должно быть:
var page = Int()
var pageViews: [UIImageView?] = []
var sixPlusImages = [
UIImage(named: "Glance 5.5"),
UIImage(named: "Currencies 5.5"),
UIImage(named: "Swipe 5.5"),
UIImage(named: "Format 5.5"),
UIImage(named: "Search 5.5")
]
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:AppImagesTableViewCell = self.appTableView.dequeueReusableCellWithIdentifier("appImages", forIndexPath: indexPath) as! AppImagesTableViewCell
return cell
}
func loadPage(page: Int) {
let cell = appTableView.cellForRowAtIndexPath(NSIndexPath(index: 0))
if page < 0 || page >= pageViews.count {
return
}
if let pageView = pageViews[page] {
return
} else {
var imageFrame = CGRect(x: (cell.scrollView.bounds.width * CGFloat(page)) + 5, y: 0, width: (cell.scrollView.bounds.width) - 10, height: 40)
let imageView = UIImageView()
imageView.contentMode = .ScaleAspectFit
imageView.frame = imageFrame
imageView.image = sixPlusImages[page]
cell.scrollView.addSubview(imageView)
}
pageViews[page] = imageView
}
func purgePage(page: Int) {
if page < 0 || page >= sixPlusImages.count {
return
}
if let pageView = pageViews[page] {
pageView.removeFromSuperview()
pageViews[page] = nil
}
}
func loadVisiblePages() {
let pageWidth = cell.scrollView.frame.size.width
page = Int(floor((cell.scrollView.contentOffset.x * 2.0 + pageWidth)/(pageWidth * 2.0)))
pageControl.currentPage = page
let firstPage = page - 1
let lastPage = page + 1
for var index = 0; index < firstPage; ++index {
purgePage(index)
}
for index in firstPage...lastPage {
loadPage(index)
}
for var index = lastPage+1; index < sixPlusImages.count; ++index {
purgePage(index)
}
}
func scrollViewDidScroll(scrollView: UIScrollView) {
loadVisiblePages()
}
Очевидно, что существует немало проблем с Это. Кажется, я не могу получить доступ к scrollView, который у меня есть как выход в классе ячеек, что вызывает некоторые проблемы.
Может ли кто-нибудь дать мне руководство? Я не вижу никаких быстрых примеров в Интернете.
Спасибо.
Спасибо! Я пробовал этот код (очевидно, сначала меняя переменные на свои), и он компилируется, но ничего не отображается в таблице. Просто пустая ячейка. – user3746428
Я могу поделиться проектом, если вы этого хотите, по github –
У вас есть собственные изображения? –