Загрузка правильного изображения в подробный вид - PullRequest
0 голосов
/ 22 октября 2018

У меня есть приложение TableView, которое воспроизводит музыку.Треки названы: 0.mp3, 1.mp3 и т. Д. Они воспроизводятся в подробном виде, где я также хочу изображение обложки.Я назвал изображения обложек: 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()
        }
    }
}

Ответы [ 3 ]

0 голосов
/ 22 октября 2018

Во-первых, вам не нужен символ / после открытия кавычки.

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

Должно работать нормально.

0 голосов
/ 22 октября 2018

1) Пожалуйста, добавьте свои изображения в Assets.xcassets

2) Назовите изображения как 0,1,2,3 в Assets.xcassets

3) Напишите код:

let trackId = String(trackId)
self.bookImage.image = UIImage(named: trackId)
0 голосов
/ 22 октября 2018

Вам нужно

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

Или

self.bookImage.image = UIImage(named:"\(trackID)")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...