我有一个 UITableViewCell 类,该单元格是从另一个包含表格视图的类初始化的。我想将一个整数值从表格视图类传递给单元格类。
在目标 c 中,它只是通过制作全局变量并在制作全局变量类的实例时传递值来完成。我在声明时不想要任何值,并且这个全局变量会在它通过另一个类时更改值并获取值。
我不知道哪里出错了请看我下面提到的代码-
UITableViewCell 类:-
import UIKit
class PostHeaderCell: UITableViewCell {
var loopVariable: Int? // This is global variable that i have written
@IBOutlet weak var viewMain: UIView!
@IBOutlet weak var viewCategory: UIView!
@IBOutlet weak var mainViewHeight: NSLayoutConstraint!
@IBOutlet weak var topLayoutViewCategory: NSLayoutConstraint!
override func awakeFromNib() {
super.awakeFromNib()
print(loopVariable)
viewMain.layer.cornerRadius=5.0
viewMain.layer.borderColor = UIColor(red: 212.0/255.0, green: 217.0/255.0, blue: 221.0/255.0, alpha: 1.0).CGColor
viewMain.layer.borderWidth=1.0
var myVar = 50.0 as CGFloat
for var i=0;i<loopVariable;i++
{
mainViewHeight.constant=mainViewHeight.constant+30
var postCell :PostCategoryView?
postCell = NSBundle.mainBundle().loadNibNamed("PostCategoryView", owner: self, options: nil)[0] as? PostCategoryView
postCell!.frame=CGRectMake(10,myVar+10,postCell!.frame.size.width,50)
print(postCell)
myVar = myVar + 55.0;
}
self.layoutSubviews()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
现在,我在另一个类中实现了这个 UITableViewCell 类,并从该类传递循环变量值,请查看下面提到的用于调用和实例化 PostHeaderCell- Class B 的代码:-
var cell:PostHeaderCell! = tableView.dequeueReusableCellWithIdentifier("PostHeaderCell", forIndexPath: indexPath) as! PostHeaderCell
cell.loopVariable=2
return cell
注意 - :我想从 B 类初始化循环变量的值,但它总是给出 nil(我已将 2 作为 loopVariable 的值传递)。