【发布时间】:2021-02-02 06:24:52
【问题描述】:
我一直在使用结束时间显示音频持续时间。一位优秀的 Stack Overflow 开发人员提出了这个解决方案。
因此,我在我的视图中添加了这个:
struct ContentView: View {
@ObservedObject var viewModel = MyViewModel() //<- here
var body: some View {
VStack {
Text(viewModel.endTime) //<- here
}
}
}
这是我viewModel中的代码:
class MyViewModel: ObservableObject {
@Published var endDate: Date?
var endTime: String{
endDate == nil ? "":endDate!.description
}
func play(){
let path = Bundle.main.path(forResource: "song", ofType:"mp3")!
let url = URL(fileURLWithPath: path)
do {
player = try AVAudioPlayer(contentsOf: url)
endDate = Date() + player.duration
if player.isPlaying{
player.pause()
}
else{
player.play()
}
isPlaying = player.isPlaying
}catch{print("error")}
但我得到的时间错误(不是系统时间),但日期正确。我只想显示不带日期的正确时间。
【问题讨论】:
标签: ios swift swiftui avaudioplayer