gpt4 book ai didi

ios - 行编辑操作不起作用 Couchbase Lite iOS 1.3

转载 作者:行者123 更新时间:2023-11-30 13:07:36 25 4
gpt4 key购买 nike

自从 ios 从 1.2.1 升级到 couchbase lite v 1.3 以来,就不再调用与行编辑操作相关的 tableview 方法。

以下是我如何设置 View Controller :

class MyClass: UIViewController, CBLUITableDelegate {

...
@IBOutlet weak var tableView: UITableView!
var database: CBLDatabase!;
let datasource: CBLUITableSource = CBLUITableSource();

...

override func viewDidLoad() {
super.viewDidLoad()
self.database = DataService.sharedInstance.getDatabase();
self.datasource.query = self.database.viewNamed("userNotifsView").createQuery().asLiveQuery();
self.datasource.tableView = self.tableView;
self.tableView.dataSource = self.datasource;
self.tableView.delegate = self;
}

!!! CALLED !!!
func couchTableSource(source: CBLUITableSource, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell? {
let cell = tableView.dequeueReusableCellWithIdentifier("TestCell", forIndexPath: indexPath) as! MostViewedTableViewCell;
let row = self.datasource.rowAtIndex(UInt(indexPath.row));
let notif = row!.value as! NSDictionary;
cell.mLabel?.text = notif["message"] as? String;
return cell;
}

!!! CALLED !!!
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true);
}

!!! NEVER CALLED !!!
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? {
print("#############################");
print("edit actions for row at index path");
print("#############################\n\n\n\n");

let myAction = UITableViewRowAction(style: .Normal, title: ...
...

myAction.backgroundColor = UIColor.orangeColor()
return [myAction];
}

!!! NEVER CALLED !!!
func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
print("#############################");
print("can edit row at index path");
print("#############################\n\n\n\n");
return true
}

!!! NEVER CALLED !!!
func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
print("#############################");
print("commit editing style");
print("#############################\n\n\n\n");
}

正在调用沙发表源上的 cellForRowAtIndexPath,因为我可以自定义单元格。 didSelectRowAtIndexPath 正在被调用,这很奇怪,因为它是一个 tableView 方法。未调用 3 个与编辑操作相关的方法。大约一周前,这工作正常。然后我转向其他事情,将 CBL iOS 升级到 v1.3,然后又回来解决这个问题,然后……不起作用。尝试降级回 1.2.1,但没有效果。我发现的关于此的最切中要害的帖子是一个人必须删除他的 Storyboard上的所有连接,我这样做了并将所有内容重新连接起来。我创建了新项目...不在任何地方工作。

有什么想法吗?也许我错过了一些愚蠢的事情? 1.3 中的错误?

最佳答案

replication.deletionAllowed = true;

解决了问题。

关于ios - 行编辑操作不起作用 Couchbase Lite iOS 1.3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39157930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com