【问题标题】:Set Music Playback Slider in Music Player App with Swift?使用 Swift 在音乐播放器应用程序中设置音乐播放滑块?
【发布时间】:2014-08-15 06:27:50
【问题描述】:

音乐应用程序包含轨道滑块来控制音乐播放,这是我在objective-c中用来设置滑块值的代码

TrackSlider.maximumValue = Player.duration;
TrackSlider.minimumValue = 0;
Player.currentTime = TrackSlider.value;

现在在 swift 和新的 xCode 中,此代码不再工作我收到此错误

'NSTimeInterval' is not convertible to 'Float'
'Float' is not convertible to 'NSTimeInterval'

有没有办法将滑块值(float)转换为 player.currentTime(NSTimeInterval) 或相反

【问题讨论】:

    标签: ios swift avaudioplayer uislider audio-player


    【解决方案1】:

    让我们考虑这个例子:

    var interval: NSTimeInterval = 12.48
    let myFloat: Float32 = 12.67
    interval = myFloat //Compile time error: 'Float32' is not convertible to 'NSTimeInterval'
    interval = Double(myFloat) // works as NSTimeInterval is a typealias for Double
    

    如果您的情况与此示例类似,则需要转换您的TrackSlider.value

    【讨论】:

    • 这正是我想知道的,同样可以通过设置滑块浮点值 TrackSlider.value = Float(Player.currentTime) 来完成,如果我在 obj-c 中遇到这个问题,我曾经这样做过 TrackSlider.value =(Float)Player.currentTime; ,那swift 中的新方法更容易但出乎意料:D,谢谢 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    相关资源
    最近更新 更多