【问题标题】:I can't display image on UIButton in xcode 9.1我无法在 xcode 9.1 中的 UIButton 上显示图像
【发布时间】:2017-10-04 00:26:57
【问题描述】:

这是我的代码。我想在三个按钮中显示三个随机食物图像。我检查语法,这似乎也不错。我不确定图像。我在图像集中确实有 1x、2x 和 3x 图像。

import UIKit
import GameplayKit

class ViewController: UIViewController {

    @IBOutlet weak var button1: UIButton!

    @IBOutlet weak var button2: UIButton!

    @IBOutlet weak var button3: UIButton!


    var foodItems = [String]()

    override func viewDidLoad() {
        super.viewDidLoad()
        //Add food items into Array

        foodItems.append("Apple")
        foodItems.append("Banana")
        foodItems.append("Bhindi")
        foodItems.append("Bread")
        foodItems.append("CornFlakes")
        foodItems.append("Dal Dhokli")
        foodItems.append("Egg")
        foodItems.append("Milk")
        foodItems.append("Nan")
        foodItems.append("Roti")

        // Add border to button(default color is black)

        button1.layer.borderWidth = 1
        button2.layer.borderWidth = 1
        button3.layer.borderWidth = 1

        // change border color to gray


        button1.layer.borderColor = UIColor.gray.cgColor
        button2.layer.borderColor = UIColor.gray.cgColor
        button3.layer.borderColor = UIColor.gray.cgColor

        // Do any additional setup after loading the view, typically from a nib.

        askQuestion()
    }
    // ask question to identify foodItem

    func askQuestion() {
        foodItems = GKRandomSource.sharedRandom().arrayByShufflingObjects(in: foodItems) as! [String]
        //set image to button 1, 2 and 3

        button1.setImage(UIImage(named: foodItems[0]), for: .normal)
        button2.setImage(UIImage(named: foodItems[1]), for: .normal)
        button3.setImage(UIImage(named: foodItems[2]), for: .normal)

    }

这是模拟器视图。我只能看到蓝色方块。我在图像集中确实有 1x、2x 和 3x 图像。

【问题讨论】:

  • 你能把你的Assets.xcassets截图显示一下吗?

标签: ios swift xcode uibutton


【解决方案1】:

在故事板或笔尖中将按钮类型更改为自定义

【讨论】:

    【解决方案2】:

    转到图像资源 -> 选择图像 -> 属性检查器 -> 渲染为(在图像集中)应该是默认的

    【讨论】:

      【解决方案3】:

      在 xode 9 中拖放不起作用。您必须使用以下屏幕截图添加文件。

      然后使用相同的代码。

      或者在 Assets.xcassets 中添加图片

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-24
        • 1970-01-01
        • 1970-01-01
        • 2016-06-28
        相关资源
        最近更新 更多