Tôi đang thử nghiệm ứng dụng của mình trên 3 thiết bị. 2 thiết bị trên iOS 9 và một thiết bị trên iOS 8. Trên iOS 9, chức năng editActionsForRowAtIndexPath
đang hoạt động và hành động được hiển thị khi tôi vuốt một ô. Nhưng trên iOS 8, tôi không thể vuốt các ô.editActionsForRowAtIndexPath không thực thi trên iOS 8 với Xcode 7
Đây là mã của tôi:
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? {
let ShareAction = UITableViewRowAction(style: .Normal, title: "Partager", handler: { (action: UITableViewRowAction!, indexPath: NSIndexPath!) -> Void in
if AllArticle[indexPath.row].Title != nil && AllArticle[indexPath.row].Link != nil {
var ToShare = []
if self.search {
ToShare = [ArticleFiltered[indexPath.row].Link!]
} else {
ToShare = [AllArticle[indexPath.row].Link!]
}
let ActivityViewController = UIActivityViewController(activityItems: ToShare as [AnyObject], applicationActivities: nil)
self.presentViewController(ActivityViewController, animated: true, completion: {
self.TableView.setEditing(false, animated: true)
})
}
})
let FavoriteAction = UITableViewRowAction(style: .Normal, title: "Ajouté aux favoris", handler: { (action: UITableViewRowAction!, indexPath: NSIndexPath!) -> Void in
if AllArticle[indexPath.row].Favoris {
let alreadyInView = UIAlertController(title: "Favori déjà ajouté", message: "Cet article fait déjà parti de vos favoris", preferredStyle: .Alert)
let ActionAlert = UIAlertAction(title: "Ok", style: .Default) { (action) in }
alreadyInView.addAction(ActionAlert)
self.presentViewController(alreadyInView, animated: true, completion: nil)
} else {
AllArticle[indexPath.row].Favoris = true
let alreadyInView = UIAlertController(title: "Favori ajouté", message: "Cet article fait maintenant parti de vos favoris", preferredStyle: .Alert)
let ActionAlert = UIAlertAction(title: "Ok", style: .Default) { (action) in }
alreadyInView.addAction(ActionAlert)
self.presentViewController(alreadyInView, animated: true, completion: nil)
Favorite.append(indexPath.row)
saveFavoris()
}
self.TableView.setEditing(false, animated: true)
})
FavoriteAction.backgroundColor = UIColor.redColor()
return [ShareAction, FavoriteAction]
}
Và dĩ nhiên là tôi thêm vào trong
viewDidLoad()
if TableView != nil {
TableView.delegate = self
TableView.dataSource = self
TableView.tableFooterView = UIView(frame: CGRectZero)
TableView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: "tapTableView"))
TableView.gestureRecognizers?.last?.delegate = self
}
May lỗi Xcode của nó? Bất kỳ ý tưởng nào?
Cảm ơn!
Tôi gặp sự cố tương tự. Tất cả hoạt động tốt trên iOS 9 nhưng không phải trên 8. –
Chủ nhân Vàng của Xcode có sửa lỗi này không? –
Lỗi vẫn còn ở đây với Xcode GM, có thể đó là prog của chúng tôi –