2016-07-14 52 views
0

我正在使用图形来显示一些数据的应用程序。我正在使用这个很好的Scrollable-GraphView:https://github.com/philackm/Scrollable-GraphViewiOS - 在运行时使用Interface Builder创建的UIView框架

因为这只是一个继承自UIScrollView的类,所以不能将它与Interface Builder一起使用(它也没有init(withCoder :)功能实施)。

我现在想用界面生成器添加一个UIView,它具有在运行时正确调整大小的所有必要约束。如何在运行时用我的GraphView“替换”UIView?

此方法用于在运行时创建我的图表:

private func createDarkGraph(frame: CGRect) -> ScrollableGraphView { 
    let graphView = ScrollableGraphView(frame: frame) 

    // ... some customization 

    return graphView 
} 

回答

0

在Interface Builder中,你可以拖动一个UIScrollView并建立约束像正常的UIScrollView,然后将类设置为ScrollableGraphView,选择正确的模块(进口!!!看到这个链接XCODE 7.1 Swift 2 Unknown class in Interface Builder file)。如果您从界面构建器(创建插座.etc)获取scrollView实例,则它必须是ScrollableGraphView的实例。这应该工作得很好。

enter image description here

enter image description here

+0

我试过之前,但是当您使用界面生成器自定义视图,你需要实现*的init(编码器:)*初始化。但事实并非如此。 – beeef

+0

您收到错误“Interface Builder文件swift中的未知类ScrollableGraphView”?您应该选择'Class'字段下方的模块。请参阅此链接[Interface Builder文件中的XCODE 7.1 Swift 2未知类](http://stackoverflow.com/questions/33033129/xcode-7-1-swift-2-unknown-class-in-interface-builder-file) 。设置模块后,它可以工作。我会更新我的答案。 – Allen

+0

我正在按照您的操作进行操作。我有一个IBOutlet连接到包含ScrollableGraphView的ViewController。但是,当我运行我的应用程序时,我得到错误'致命的错误:初始化(编码器:)还没有实现:文件../MyApp/Libraries/ScrollableGraphView.swift,第244行' – beeef

相关问题