【问题标题】:Swift ScrollView In UITableViewCell not scrollingUITableViewCell中的Swift ScrollView不滚动
【发布时间】:2015-05-22 01:34:08
【问题描述】:

我是 swift 新手,正在尝试将 UIScrollview 添加到自定义 UITableViewCell。我似乎无法让滚动视图在模拟器中滚动。我已经测试了垂直和水平滚动。

这是我的自定义UITableViewCell的代码

import UIKit

class CustomTableViewCell: UITableViewCell, UIScrollViewDelegate {


@IBOutlet weak var winLoseValueLabel: UILabel!
@IBOutlet weak var dateLabel: UILabel!
@IBOutlet weak var newTotalLabel: UILabel!
@IBOutlet weak var locationLabel: UILabel!
@IBOutlet weak var playersLabel: UILabel!
@IBOutlet weak var playersScrollView: UIScrollView!

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
        self.playersLabel.text = nil
        //self.playersScrollView.contentSize.height = 1000
        self.playersScrollView.contentSize.width = 1000

    }

    override func setSelected(selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)

        // Configure the view for the selected state
    }

    func addLabelToScrollView(str : String) {
        if self.playersLabel.text == nil{
            self.playersLabel.text = str
        }
        else{
            self.playersLabel?.text = self.playersLabel.text! + "\n\(str)"
        }
    }
}

我的 playerScrollView 插座已正确连接到我故事板中的 scrollview。据我从网上所有的教程和资源中可以看出,我应该只需要设置 contentSize 的宽度或高度(大于视图区域)就可以让它滚动,我已经在 awakeFromNib 函数中完成了。

任何想法为什么这在模拟器中不起作用?其次,理想情况下我想在表格单元格中有一个垂直滚动的滚动视图,但我认为表格视图的垂直滚动可能会干扰滚动视图,所以我将它更改为水平滚动进行测试,这也不起作用.

你能在垂直滚动的UITableView中有一个垂直的scrollview,还是表格视图滚动会干扰scrollview

【问题讨论】:

  • 可能发生的情况是您的 UITableView 正在从您的 tableViewCells 中“窃取”触摸事件。不鼓励在 UITableViewCell 中添加 UIScrollView 的方法,因为我们有所谓的响应者链,它确定将处理平移手势的对象。这是意料之中的事情,指导方针建议避免这种情况是一件坏事。

标签: ios iphone uitableview swift uiscrollview


【解决方案1】:

好吧,事实证明我的 playerLabel 上的约束,它是 playerScrollView 的子视图,是罪魁祸首,虽然我不知道为什么。我调整了标签上的约束并允许水平滚动工作。

垂直滚动仍然不起作用,所以我必须重写滚动视图中的 touchesBegan 和 touchesEnded 方法,以便我可以禁用/重新启用表格视图的滚动。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多