0
我有一個結構從結構(SWIFT)
struct FavoriteSong {
var title: String
var artist: String
init(title : String, artist : String) {
self.title = title
self.artist = artist
}
init?(dictionary : [String:String]) {
guard let title = dictionary["title"],
let artist = dictionary["artist"] else { return nil }
self.init(title: title, artist: artist)
}
var propertyListRepresentation : [String:String] {
return ["title" : title, "artist" : artist]
}
}
var favoriteSongs: [FavoriteSong] = [
];
通過按下一個UIButton
刪除項目,對象添加到結構
favoriteSongs.append(FavoriteSong(title: songs[thisSong].title, artist: songs[thisSong].artist))
但是,我想另一個UIButton
去除對象來自結構。類似這樣的:
favoriteSongs.remove(FavoriteSong(title: songs[thisSong].title, artist: songs[thisSong].artist))
我正在使用UITableView
來顯示信息。我將如何做到這一點?
刪除哪個元素?你沒有提到應用程序擴展時它將如何工作。你爲一個結構解釋了它的例子,但是你想要移除哪個元素。你有這些集合視圖或tableview嗎?添加更多細節! –
正如你將喜歡的歌曲存儲在一個'Array'中。所以你必須記住存儲歌曲的'index',然後你可以通過索引來刪除它。其他選項是通過'title'將它存儲在'Dictionary'中,然後你可以通過'title'鍵刪除fvrt歌曲。 –
你可以使'FavoriteSong'符合'Equatable'協議,然後遍歷數組以找到使用== ==操作符的歌曲的潛在索引,如果找到了,將它從數組中移除。 – Sajjon