Search code examples
iosswiftxcodeuiimageviewsf-symbols

SF Symbols not loading into UIImageView


I am creating an app for tracking health information, and I would like to use the two arrow images from SF Symbols. Unfortunately, no matter what I try, these symbols will not show up. I have already tested the code with an image from the Assets folder, which seems to work with no problem in the UIImageViews I have created. It is only when I attempt to use UIImage(systemName: ) that I am having problems.

        self.calendarView = UIView(frame: CGRect(x: 0, y: self.getCurrentY(), width: UIScreen.main.bounds.width, height: 60))
        self.calendarView?.backgroundColor = .white
        self.calendarView?.layer.borderColor = UIColor.black.cgColor
        self.calendarView?.layer.borderWidth = 1

        self.currentDate = UILabel(frame: CGRect(x: self.calendarView!.bounds.width / 4, y: self.calendarView!.bounds.height / 2 - 20, width: self.calendarView!.bounds.width / 2, height: 40))
        self.currentDate!.text = "5/6/20"
        self.currentDate!.textColor = .black
        self.currentDate!.layer.borderColor = UIColor.black.cgColor
        self.currentDate?.layer.borderWidth = 1
        self.currentDate?.textAlignment = .center
        self.calendarView?.addSubview(currentDate!)

        //let testImage = UIImage(named: "logotest.jpg")!
        let image1 = UIImage(systemName: "arrow.left")!.withTintColor(.blue)
        let image2 = UIImage(systemName: "arrow.right")!.withTintColor(.blue)

        self.leftArrow = UIImageView(image: image1)
        self.rightArrow = UIImageView(image: image2)

        self.leftArrow?.frame = CGRect(x: 10, y: 10, width: 40, height: 40)
        self.rightArrow?.frame = CGRect(x: UIScreen.main.bounds.width - 50, y: 10, width: 40, height: 40)

        self.leftArrow?.layer.borderWidth = 1
        self.rightArrow?.layer.borderWidth = 1

        self.calendarView!.addSubview(self.leftArrow!)
        self.calendarView!.addSubview(self.rightArrow!)
        self.contentView.addSubview(self.calendarView!)

What seems even stranger is that when I enter a breakpoint, the images actually show! I've attached a picture of this as well. Any help I can get with this is appreciated. Thanks!

enter image description here

enter image description here


Solution

  • Give your imageViews tint color will resolve the issue

    leftArrow.tintColor = .blue 
    leftArrow.tintColor = .blue