UIImageView 和 UIButton 背景图像在模拟器中加载时变黑

Posted

技术标签:

【中文标题】UIImageView 和 UIButton 背景图像在模拟器中加载时变黑【英文标题】:UIImageView and UIButton Background Image turns black when loaded in simulator 【发布时间】:2015-07-25 13:12:23 【问题描述】:

我有两个 UIImageViews 添加到不同的场景中,它们正在变黑。如果我更改图像名称并将它们重新上传到 image.xcassets,对于某些构建,问题已得到解决,但随后又出现了。

截图

黑框所在的地方应该有播放按钮,Score和Highscore下划线的东西应该是白色而不是黑色。

分数标签图片代码

class GameOverScene : SKScene 

var scoreImgView : UIImageView!

override func didMoveToView(view : SKView) 
    //Score Image Label
    let scoreLabel2 = "scorez2.png"
    let scoreImage = UIImage(named: scoreLabel2)
    scoreImgView = UIImageView(image: scoreImage)
    scoreImgView.frame = CGRect(x: 0, y: 0, width: view.frame.size.width / 1.8, height: view.frame.size.height / 8)
    scoreImgView.center = CGPoint(x: view.frame.size.width / 2, y: view.frame.size.height / 3.2)
    scoreImgView.contentMode = UIViewContentMode.ScaleAspectFit
    view.addSubview(scoreImgView)



重试按钮/播放按钮代码

class GameScene: SKScene 

var restartButton : UIButton!
var retryButton : UIImage = UIImage(named: "playbutton.png")!

 override func didMoveToView(view : SKView) 

    //Restart Button
    restartButton = UIButton(frame: CGRect(x: 0, y: 0, width: view.frame.size.width / 3.2, height: 50))
    restartButton.center = CGPoint(x: view.frame.size.width / 2, y: view.frame.size.height / 1.25)
    restartButton.setImage(retryButton, forState: UIControlState.Normal)
    restartButton.contentMode = UIViewContentMode.ScaleAspectFit
    restartButton.addTarget(self, action: Selector("Restart"), forControlEvents: UIControlEvents.TouchUpInside)
    self.view?.addSubview(restartButton)


编辑: 所有图像都在 Images.xcassets 中。这是放置它们的错误位置吗?

编辑: 这些图像在 iPhone 5s 上显示良好。

【问题讨论】:

还是想不通。任何帮助将不胜感激! 【参考方案1】:

我删除了 .png,它现在似乎工作正常。如果它再次中断,我会更新。

【讨论】:

以上是关于UIImageView 和 UIButton 背景图像在模拟器中加载时变黑的主要内容,如果未能解决你的问题,请参考以下文章

IOS中UIButton和UIImageView的区别

使用 UIButton 移动 UIImageView

iOS:如果背景图像与按钮颜色相同,则更改我的 UIButton 的颜色

以编程方式创建的 UIButton 为目标

NSBundle UIImageView &UIButton

UIButton 和滑动手势