如何在以编程方式制作滚动视图时解决此问题?

Posted

技术标签:

【中文标题】如何在以编程方式制作滚动视图时解决此问题?【英文标题】:How can i fix this issue in making a scroll view programatically? 【发布时间】:2016-12-20 10:19:29 【问题描述】:

快速导航器 在以编程方式制作滚动视图时如何解决此问题?

class FastNavigator: UIView 

    var scrollView : UIScrollView!
    var scrollSubviews : [UIView]!
    var size :CGFloat = 0

    func configure(subviews:[UIView])
        scrollSubviews = subviews

        scrollView = UIScrollView(frame: self.frame)
        self.addSubview(scrollView)

        for view in scrollSubviews 

            scrollView.addSubview(view)
            view.frame = CGRect(x: 0 + size  , y: 0, width: scrollView.frame.width, height: scrollView.frame.height)
            size += view.frame.size.width
            print(size)
        
        scrollView.contentSize = CGSize(width: size, height: scrollView.frame.height)
    

视图控制器

class ViewController: UIViewController 

    let fast = FastNavigator()
    let myImages = ["mahmoud.jpg","ziad.jpg","farah.jpg","zinji.jpg"]


    override func viewDidLoad() 
        super.viewDidLoad()

        var subViews : [UIImageView] = []
        for imageName in myImages 

            let myUIImage = UIImage(contentsOfFile: Bundle.main.path(forResource: imageName, ofType: "")!)
            let imageView = UIImageView(image: myUIImage)
            subViews.append(imageView)
        
        fast.frame = self.view.frame
        fast.configure(subviews: subViews)
        self.view.addSubview(fast)
    

而且我总是得到这个

libc++abi.dylib:以 NSException 类型的未捕获异常终止

【问题讨论】:

检查这可能对你有帮助***.com/questions/26442414/… ***.com/questions/30814576/… 谢谢你解决了:) 【参考方案1】:

转到Breakpoint Navigator,点击添加(“+”按钮),“异常断点”,RMB,“编辑断点”,用“po $arg1”添加动作。现在你得到了 NSException 的打印错误。请在此处发布您的错误。

【讨论】:

我已经解决了这个问题。这是因为我在 storyBoard 中添加了一个滚动视图而忘记删除它。

以上是关于如何在以编程方式制作滚动视图时解决此问题?的主要内容,如果未能解决你的问题,请参考以下文章

iOS:以编程方式在以编程方式创建的滚动视图中创建标签

以编程方式设置滚动视图的布局参数时出现异常

如何制作滚动视图,滚动iOS时在特定页面中滚动

以编程方式滚动到顶部不起作用?

以编程方式滚动到顶部不起作用?

如何制作弯曲的圆形滚动视图