我目前正在开发一个战术屏幕应用程序,其中一个人可以访问数据库添加添加到他们的屏幕上的球员。数据库工作正常,我现在试图将玩家信息传递到选定的位置。玩家信息经过很好,但我现在有麻烦,试图实施该玩家信息到选定的位置:变量不存储?
var selectedP: Int?
@IBAction func selectAPlayer(_ sender: UITapGestureRecognizer) {
self.selectedP = sender.view!.tag
//print (selectedP!)
}
以上是演示了方法如何,我想保存所选位置的标签与selectedP
,所以我可以访问它的子视图。上述方法打印出正确的标签。但是,当我尝试用另一种方法调用它时,返回的变量始终为零。我不确定问题是什么。这里是我尝试调用selectedP
变量的方法:
func setPlayer() {
//print(selectedP!)
}
简单的打印selectedP
导致程序崩溃,因为它显然是相当于nil
。有什么我做错了吗?
我必须注意,setPlayer()
方法是由另一个类的segue调用的,该类基本上是View Player
类。这显示为应用程序中的弹出窗口。我不确定如果你调用popoverController,变量基本上会被恢复?
尝试一次一个或这两个'var selectedP:Int!'和'self.selectedP = sender.tag'。我只是说我没有尝试过。 – knownUnknown
@creatando setPlayer应该在你的IBAction中调用,只有当你执行你的action时,你才能获得你的变量值。在那之前你不能调用setPlayer方法。 –