Tôi muốn tải lại dữ liệu bảng của tôi bên trong một khối trong phương pháp này:Swift thay thế cho performSelectorOnMainThread
import UIKit
import AssetsLibrary
class AlbumsTableViewController: UITableViewController {
var albums:ALAssetsGroup[] = []
func loadAlbums(){
let library = IAAssetsLibraryDefaultInstance
library.enumerateGroupsWithTypes(ALAssetsGroupType(ALAssetsGroupAll),
usingBlock: {(group, stop) in
if group {
self.albums.append(group)
}
else {
dispatch_async(dispatch_get_main_queue(), {
self.tableView.reloadData()
})
}
}, failureBlock: { (error:NSError!) in println("Problem loading albums: \(error)") })
}
override func viewDidLoad() {
super.viewDidLoad()
loadAlbums()
// Uncomment the following line to preserve selection between presentations
// self.clearsSelectionOnViewWillAppear = false
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
//self.navigationItem.rightBarButtonItem = self.editButtonItem
}
Nhưng khối khác sẽ không thực thi. Lỗi tôi nhận được là:
'performSelectorOnMainThread' is unavailable: 'performSelector' methods are unavailable
Vậy thay thế cho 'performSelectorOnMainThread'
là gì?
CẬP NHẬT:
Tôi hiện đang bị lỗi hủy bỏ. Đây là những gì giao diện điều khiển trông giống như: http://cl.ly/image/3D0h1x433P0R
GCD đã được ưa thích hơn 'performSelectorOnMainThread' trong Objective -C trong một thời gian, hãy xem tài liệu tại đây: https: //developer.apple.com/library/ios/documentation/Performance/Reference/GCD_libdispatch_Ref/Reference/reference.html – Jack