0
我是新来的Xcode和斯威夫特,但我想我最好:) 我需要一点帮助。我已经写了这个代码到目前为止...但我有一个问题,我不知道如何解决它... 嗯,我的问题是,我无法检查两个变量是否相等。更确切地说,我想检查“fileAudio”号码是否与应用中显示的照片号码相同。如何检查来自不同函数的两个变量是否相等?
我还需要一些帮助来显示两个随机图片(leftImage和rightImage)和“playSound”按钮以链接到它们中的一个。此时......我只能将它与左图像链接起来。
var soundFiles: [String] = [
"s0",
"s1",
"s2",
"s3",
"s4",
"s5",
"s6",
"s7",
"s8",
"s9"
]
var images1: [UIImage] = [
UIImage(named: "foto0.png")!,
UIImage(named: "foto1.png")!,
UIImage(named: "foto2.png")!,
UIImage(named: "foto3.png")!,
UIImage(named: "foto4.png")!,
UIImage(named: "foto5.png")!,
UIImage(named: "foto6.png")!,
UIImage(named: "foto7.png")!,
UIImage(named: "foto8.png")!
]
var images2: [UIImage] = [
UIImage(named: "foto0.png")!,
UIImage(named: "foto1.png")!,
UIImage(named: "foto2.png")!,
UIImage(named: "foto3.png")!,
UIImage(named: "foto4.png")!,
UIImage(named: "foto5.png")!,
UIImage(named: "foto6.png")!,
UIImage(named: "foto7.png")!,
UIImage(named: "foto8.png")!
]
var happySad: [UIImage] = [
UIImage(named: "sad.png")!,
UIImage(named: "happy.png")!
]
var currentImageIndex = 0
var currentImage2Index = 0
var player: AVAudioPlayer!
var ran1:Int = 0
var ran2:Int = 0
@IBOutlet weak var leftImage: UIImageView!
@IBOutlet weak var rightImage: UIImageView!
@IBOutlet weak var sh: UIImageView!
@IBAction func playSound(_ sender: Any) {
let fileaudio:String = "s"+String(ran1)
let soundFilePath = Bundle.main.url(forResource: fileaudio, withExtension: ".m4a")!
player = try! AVAudioPlayer(contentsOf: soundFilePath)
player.prepareToPlay()
player.play()
}
@IBAction func nextImages(_ sender: Any) {
ran1 = Int(arc4random_uniform(7) + 1)
ran2 = Int(arc4random_uniform(6) + 2)
let imageName1:String = "foto"+String(ran1)
leftImage.image = UIImage.init(named: imageName1)
let imageName2:String = "foto"+String(ran2)
rightImage.image = UIImage.init(named: imageName2)
leftImage.isUserInteractionEnabled = true
self.view.addSubview(leftImage)
let gesture1 = UITapGestureRecognizer(target: self, action: #selector(ViewController.singleTap1))
leftImage.addGestureRecognizer(gesture1)
sh.image = UIImage(named: "question")
rightImage.isUserInteractionEnabled = true
self.view.addSubview(rightImage)
let gesture2 = UITapGestureRecognizer(target: self, action: #selector(ViewController.singleTap2))
rightImage.addGestureRecognizer(gesture2)
}
func singleTap1() {
if currentImageIndex == ran1 {
print("\(currentImageIndex)")
sh.image = UIImage(named: "happy.png")
} else {
print("\(currentImageIndex)")
sh.image = UIImage(named: "sad.png")
}
}
func singleTap2() {
if ran1 == ran2 {
sh.image = UIImage(named: "happy.png")
} else {
sh.image = UIImage(named: "sad.png")
}
}
谢谢你,拉杜
我不想在playSound中产生一个随机数。我有两个图像(左和右)和一个按钮,playSound。我需要将playSound按钮链接到两个图像中的一个(不总是相同)。当我点击playSound按钮时,我听到一个音频,例如狗吠声。然后使用必须选择代表声音的图像(左或右)。你能帮我做这件事吗?请:) –
看看我编辑的答案。 – the4kman
非常感谢你!它的功能就像是一种魅力:D 我可以问你,如何在打开应用程序时让它显示2张图像?现在,当我打开应用程序..我只看到playSound按钮和nextImages按钮。如果我点击playSound,因为我打开应用程序..它崩溃......错误是“预计发现零...”再次感谢! –