2016-07-14 110 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

相關問題