我在UIView
類中有全局初始化變量。全局初始化變量在Swift UIView XIB中更改爲'nil'?
變量是statusLabel
作爲字符串。我在Pickerview didSelectRow
委託方法中爲statusLabel
分配了一個值。 在那裏我得到了字符串的值。但是,代表完成字符串更改的值時nil
所有其他全局初始化變量都一樣。 可能是什麼原因?
由於提前
class CustomPickerMenu: UIView,UIPickerViewDataSource,UIPickerViewDelegate
{
var statusLabel = String()
var pickerArray = [String]()
required init?(coder aDecoder: NSCoder)
{
pickerArray = ["None","Connections","All"]
super.init(coder: aDecoder)
print("Awake with coder")
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
if(row == 0)
{
statusLabel = pickerArray[row]
}
if(row == 1)
{
statusLabel = pickerArray[row]
}
if(row == 2)
{
statusLabel = pickerArray[row]
}
print("statusLabel : " + statusLabel)
}
@IBAction func saveStatus(_ sender: Any)
{
delegate?.statusChange(controller: self, text:statusLabel)
self.delegate?.showNavigationController(controller: self)
print("statusLabel : " + statusLabel)
}
這裏是didselectrow代表(第1三路輸出)在輸出statusLabel和保存狀態(最後輸出)
把問題的實際代碼代替圖像 – Rajat
1.作爲@Rajat在上面的評論中提到,添加代碼不是圖像。 2.在實際嘗試訪問變量的地方添加代碼,並將其找到爲空。 – lukya
這裏是完整的代碼 – fAiSaL