Ios 在自定义tableviewCell类中未调用ScrollView委托 我正在使用UITableViewCell自定义类 使用Scrollview在tableviewcell中进行水平滚动 在UIViewcontroller 在UITableviewcell类中写入scrollview委托 未调用委托方法

Ios 在自定义tableviewCell类中未调用ScrollView委托 我正在使用UITableViewCell自定义类 使用Scrollview在tableviewcell中进行水平滚动 在UIViewcontroller 在UITableviewcell类中写入scrollview委托 未调用委托方法,ios,objective-c,swift,uitableview,uiscrollview,Ios,Objective C,Swift,Uitableview,Uiscrollview,我的代码: class ViewController: UIViewController { @IBOutlet weak var matchesTableView: UITableView! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. matchesTableView.delegate = self m

我的代码:

class ViewController: UIViewController {

@IBOutlet weak var matchesTableView: UITableView!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view.
    matchesTableView.delegate = self
    matchesTableView.dataSource = self
    tableViewSetup()

}

func tableViewSetup() {
            matchesTableView.rowHeight = UITableView.automaticDimension
            matchesTableView.estimatedRowHeight = self.view.bounds.height
    matchesTableView.tableFooterView = UIView()
    matchesTableView.separatorStyle = UITableViewCell.SeparatorStyle.none
}

}

// MARK: UITableviewdelegate

extension ViewController : UITableViewDelegate, UITableViewDataSource {

func numberOfSections(in tableView: UITableView) -> Int {

    return 1
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 1
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "TableViewCell", for: indexPath) as! TableViewCell

    return cell
}

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {

    return self.view.bounds.height
}
}

UITableView Cell:

import UIKit

class TableViewCell: UITableViewCell, UIScrollViewDelegate {


@IBOutlet weak var bannerScrollView: UIScrollView!

  @IBOutlet weak var matchesPageControl: UIPageControl!


override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code+
    self.bannerScrollView.delegate = self

}
func scrollViewDidScroll(_ scrollView: UIScrollView) {

    let pageNumber = round(scrollView.contentOffset.x / scrollView.frame.size.width)
    matchesPageControl.currentPage = Int(pageNumber)
}
override func setSelected(_ selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state
}

}

看起来还可以,您确定滚动视图确实在滚动吗?只需记录滚动内容偏移量。可能触摸被tableView单元格中的某些东西吸收了。TBH在单元格中放置滚动视图看起来很奇怪。我想知道是否还有其他方法。Tableview滚动工作正常,scrollview滚动也很完美。我的问题是没有调用scrollview委托。这样我就不能使用页面控件了。谢谢在ViewController类中添加此方法--func-scrollViewDidScroll(scrollView:UIScrollView){let pageNumber=round(scrollView.contentOffset.x/scrollView.frame.size.width)matchesPageControl.currentPage=Int(pageNumber)},并检查是否调用了它。如果是,那是因为UITableViewDelegate inturns符合UIScrollViewDelegate。@非常感谢帮助。。!你救了我一天。工作很好。@SASIKUMAR很乐意帮忙