我正在尝试实施Koloda刷卡方式。我已经创建了一个.xib文件,结构为图像1& 2。

正如您在图1中所看到的,我已经将文件所有者设置为XIB文件自定义类。
在图2中,我将类保留为空白(不确定这是否正确)。
我的NIB类如下代码所示。
import UIKit
import Koloda
class CardView: KolodaView {
var view: UIView!
var nibName: String = "CardView"
var uid: String!
@IBOutlet weak var profileImage: UIImageView!
@IBOutlet weak var nameLabel: UILabel!
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
setUp()
}
override init(frame: CGRect) {
super.init(frame: frame)
setUp()
}
func setUp() {
view = loadViewFromNib()
view.frame = bounds
view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
view.isUserInteractionEnabled = true
addSubview(view)
}
func loadViewFromNib() -> UIView {
let bundle = Bundle(for: CardView.self)
let nib = UINib(nibName: String(describing: CardView.self), bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil)[0] as! UIView
return view
}
}在我的控制器中,我有如下所示的索引视图;
func koloda(_ koloda: KolodaView, viewForCardAt index: Int) -> UIView {
_ = userResults[Int(index)]
let bundle = Bundle(for: CardView.self)
let nib = UINib(nibName: String(describing: CardView.self), bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil)[0] as! UIView
return view
}我无法插入我的IBOutlets并在我的UIViewController中引用它们。因为我将获得geoFire & FirDatabase信息并填充视图。我知道这和文件的所有者有关。我只是不确定如何将IBOutlets设置为子视图而不是自定义类。
任何帮助都很感激。
发布于 2017-08-12 15:19:36
终于经过了几个小时的修补。
我现在有一个工作的“带有geoLocating的Tinder”:)
发布于 2017-08-11 11:26:17
尝试将CardView类设置为自定义类CardView而不是UIView
https://stackoverflow.com/questions/45633991
复制相似问题