将 UIImageView 添加到子视图
Adding an UIImageView to the Subview
我得到以下代码:
func addObject(object: UIImageView)
{
view.addSubview(object)
}
在另一个 class 中,我得到了这个代码:
func loadPlayground(width: CGFloat)
{
let playerX = screenWidth / fieldWidth * 2
let playerY = screenHight / fieldWidth * 2
let player1 = UIImageView(frame: CGRectMake(playerX, playerY, width, width))
player1.image = player
ViewController().addObject(player1)
print(playerX)
变量玩家是:
let player = UIImage(named: "Player.png")
现在是我的问题。我的错误代码是:
Thread 1: EXC_BAD_ACCESS(code=2, address=0x114fbc).
它出现在我试图将对象添加到 class addObject 内的子视图的行中。我还多次获得该函数的控制台输出。这让我得出结论,该功能经常启动并在一段时间后停止。希望你能帮助我。
在您的代码中,您每次都创建一个 ViewController
的新实例以添加图像视图。
ViewController().addObject(player1)
因此在 addObject
方法中,view
将始终是 nil
,因为它尚未加载。
为了解决这个问题,您想要重新使用当前加载的实际 ViewController
或在加载后将图像视图添加到视图中。
我得到以下代码:
func addObject(object: UIImageView)
{
view.addSubview(object)
}
在另一个 class 中,我得到了这个代码:
func loadPlayground(width: CGFloat)
{
let playerX = screenWidth / fieldWidth * 2
let playerY = screenHight / fieldWidth * 2
let player1 = UIImageView(frame: CGRectMake(playerX, playerY, width, width))
player1.image = player
ViewController().addObject(player1)
print(playerX)
变量玩家是:
let player = UIImage(named: "Player.png")
现在是我的问题。我的错误代码是:
Thread 1: EXC_BAD_ACCESS(code=2, address=0x114fbc).
它出现在我试图将对象添加到 class addObject 内的子视图的行中。我还多次获得该函数的控制台输出。这让我得出结论,该功能经常启动并在一段时间后停止。希望你能帮助我。
在您的代码中,您每次都创建一个 ViewController
的新实例以添加图像视图。
ViewController().addObject(player1)
因此在 addObject
方法中,view
将始终是 nil
,因为它尚未加载。
为了解决这个问题,您想要重新使用当前加载的实际 ViewController
或在加载后将图像视图添加到视图中。