UIImageView UIImage 字符串值 Swift 4
UIImageView UIImage String Value Swift 4
我试图在 touchesBegan
时从 UIImageView
的 UIImage
获取字符串值。
这里是完整的 viewcontroller 代码。
import UIKit
class ViewController: UIViewController {
//MARK: Outlets
@IBOutlet weak var imageOne: UIImageView!
@IBOutlet weak var imageTwo: UIImageView!
@IBOutlet weak var myText: UILabel!
let imagesArray = ["banaan", "auto", "kip", "boom" ]
var questionArray: [String] = []
var touchArray: [CGPoint] = []
var itemOne: Int!
var itemTwo: Int!
override func viewDidLoad() {
super.viewDidLoad()
setupQuestions()
setupImages()
}
//MARK: Randomizing The Lable Question
fileprivate func setupQuestions() {
let firstRandomizer = arc4random_uniform(UInt32(imagesArray.count))
let secondRandomizer = arc4random_uniform(UInt32(imagesArray.count))
itemOne = Int(firstRandomizer)
itemTwo = Int(secondRandomizer)
if itemOne == itemTwo && itemTwo != 0 {
itemTwo -= 1
} else if itemOne == itemTwo && itemTwo == 0 {
itemTwo += 1
}
myText.text = """
selecteer de \(imagesArray[itemOne].capitalized)
voor dat je de \(imagesArray[itemTwo].capitalized) selecteert
"""
}
//Mark: setup images and randomizeing
fileprivate func setupImages() {
imageOne.image = UIImage(named: imagesArray[itemOne])
imageTwo.image = UIImage(named: imagesArray[itemTwo])
}
//MARK: Button Randomizer
@IBAction func nextBtnWasPressed(_ sender: Any) {
setupQuestions()
setupImages()
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
//Get image stringvalue to compare it with the question array
}
}
你可以试试
self.myImageView.image = UIImage(myImageArray[0])
self.myImageView.tag = 0
然后内部接触
myImageArray[self.myImageView.tag]
您还可以在
之后为好的模式声明一个 var
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
print("itemOne name \(myImageArray[itemOne]) , itemTwo name \(myImageArray[itemTwo])")
}
我试图在 touchesBegan
时从 UIImageView
的 UIImage
获取字符串值。
这里是完整的 viewcontroller 代码。
import UIKit
class ViewController: UIViewController {
//MARK: Outlets
@IBOutlet weak var imageOne: UIImageView!
@IBOutlet weak var imageTwo: UIImageView!
@IBOutlet weak var myText: UILabel!
let imagesArray = ["banaan", "auto", "kip", "boom" ]
var questionArray: [String] = []
var touchArray: [CGPoint] = []
var itemOne: Int!
var itemTwo: Int!
override func viewDidLoad() {
super.viewDidLoad()
setupQuestions()
setupImages()
}
//MARK: Randomizing The Lable Question
fileprivate func setupQuestions() {
let firstRandomizer = arc4random_uniform(UInt32(imagesArray.count))
let secondRandomizer = arc4random_uniform(UInt32(imagesArray.count))
itemOne = Int(firstRandomizer)
itemTwo = Int(secondRandomizer)
if itemOne == itemTwo && itemTwo != 0 {
itemTwo -= 1
} else if itemOne == itemTwo && itemTwo == 0 {
itemTwo += 1
}
myText.text = """
selecteer de \(imagesArray[itemOne].capitalized)
voor dat je de \(imagesArray[itemTwo].capitalized) selecteert
"""
}
//Mark: setup images and randomizeing
fileprivate func setupImages() {
imageOne.image = UIImage(named: imagesArray[itemOne])
imageTwo.image = UIImage(named: imagesArray[itemTwo])
}
//MARK: Button Randomizer
@IBAction func nextBtnWasPressed(_ sender: Any) {
setupQuestions()
setupImages()
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
//Get image stringvalue to compare it with the question array
}
}
你可以试试
self.myImageView.image = UIImage(myImageArray[0])
self.myImageView.tag = 0
然后内部接触
myImageArray[self.myImageView.tag]
您还可以在
之后为好的模式声明一个 varoverride func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
print("itemOne name \(myImageArray[itemOne]) , itemTwo name \(myImageArray[itemTwo])")
}