 <p>Just remove .png from the image strings </p> <pre><code>let TopButtonImageNamesBlue = [ "Aquarium Icon Blue", "Bugs Icon Blue", "Ancient World Icon Blue", "World Cultures Icon Blue", "Dinosaurs Icon Blue", "Space Icon Blue"] </code></pre> <p>Here is my working code :</p> <pre><code> var images = ["01","02","03"] var image : UIImage? = UIImage(named: images[0]) if (image == nil) { println("null") } else{ var button: UIButton = UIButton.buttonWithType(UIButtonType.Custom) as! UIButton button.frame = CGRectMake(0, 0, 50, 50) button.setImage(image, forState: .Normal) self.view.addSubview(button) println("image is available") } </code></pre> <p>Output is :</p> <blockquote> <p>image is available</p> </blockquote> <p><img src="https://i.stack.imgur.com/1JY6i.png" alt="enter image description here"></p> <p>You must give the name same as assets folder. </p>