CardView.xibというXIBファイルを作成し、そこでカードを表示する再利用可能なデザインパーツを作成しました。
このカードデザインを複数枚使って、UIScrollViewに並べてスクロール表示できるようにしたいと考えています。
UIScrollViewとしては、以下リンクのような使い方を考えています。
UIScrollViewで横スクロールのページングを実装する
このリンクの画像を、自作したカードデザインUIに置き換えるような感じです。
違う点としては、このリンク先では固定の画像データを事前に読み込んでいますが、今回のカードに表示するデータはサーバーから引っ張ってくるため、動的に枚数が変わることになります。
どのように作ればよいでしょうか?
アドバイスを頂けますと幸いです。
XIBファイルの作成と、UIScrollViewのStoryboardへの配置は行ったのですが、CardViewをUIScrollViewのaddViewしようとしても上手くできませんでした。
現状としては、以下のような感じです。
ScrollViewを含んだUIと紐付いたViewControllerがCardViewインスタンスを作成すると同時に、CardView.swiftがloadNibNamedでCardViewのパーツを読み出しているのですが、ここでクラッシュしてしまいます。
swift
1//ViewController.swift 2//(中略) 3let cardView = CardView(frame: CGRect(x: 0, y: 0, width: Int(self.view.frame.width), height: self.cardHight))
swift
1//CardView.swift 2class CardView: UIView { 3 override init(frame: CGRect) { 4 super.init(frame: frame) 5 let view = Bundle(for: type(of: self)).loadNibNamed("CardView", owner: self, options: nil)?.first as! UIView // ここでクラッシュ 6 } 7}
あなたの回答
tips
プレビュー