swift - 将正确的图像加载到详细 View

标签 swift avfoundation

我有一个可以播放音乐的 TableView 应用程序。这些轨道被命名为:0.mp3、1.mp3 等。它们在详细 View 中播放,我还想要封面的图像。我将封面图片命名为:0.png、1.png 等。

我尝试使用代码加载正确的图像:

self.bookImage.image = UIImage(named: ("/\(trackID!).png"))

但它不起作用。

这是我的更多代码:

import UIKit
import AVFoundation

class AudioPlayerVC: UIViewController {

    var trackID: Int!
    var audioPlayer:AVAudioPlayer!

    @IBOutlet var bookImage: UIImageView! 

    @IBAction func play(_ sender: AnyObject) {
        if !audioPlayer.isPlaying{
            audioPlayer.play()
        }
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        self.bookImage.image = UIImage(named: ("/\(trackID!).png"))
        trackLbl.text = "Track \(trackID!)"

        let path: String! = Bundle.main.resourcePath?.appending("/\(trackID!).mp3")
        let mp3URL = NSURL(fileURLWithPath: path)
        do
        {
            audioPlayer = try AVAudioPlayer(contentsOf: mp3URL as URL)
            audioPlayer.play()
        }
    }
}

最佳答案

你需要

self.bookImage.image = UIImage(named:"\(trackID).png")

或者

self.bookImage.image = UIImage(named:"\(trackID)")

关于swift - 将正确的图像加载到详细 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52931096/

相关文章:

ios - 工具栏中显示的图像大小较大

php - 使用 JSON 字典的 POST 请求不会在 Swift 3 中使用 $_POST 返回正确的值?

ios - AVAudioPlayer pause() 未按预期运行

ios - iPhone 6s 和 6s plus 的新视频分辨率和帧速率是多少?

ios - 如何使用 AVCapturePhoto 包含位置数据?

ios - 从 UIImageView 派生的动态创建的控件缺少函数

swift - 有没有办法减少 Swift 代码行的数量?

ios - 使用 AVCaptureSession 以编程方式捕获最高分辨率图像

ios - 多路复用 Annex B MPEG-TS 时 SPS 和 PPS 的音频等效?什么是 "DecoderInfo"?

ios - 如何使用 Swift 4 实现具有动态键的字典数组的可编码