小编Mar*_*ark的帖子

持久存储更改后如何刷新fetchedResultsController

我是编程方面的周末战士,所以我可能做错了什么...

我有一个拆分视图控制器,核心数据,nsfetchedResultsController,它们都很好用。现在,我可以为用户提供一个创建persistentStore.sqlite文件的备份文件的选项。当用户从备份文件还原时,表视图不会反映任何更改。最重要的是,此后不能在tableview的add / delete中进行任何持久的更改。当我退出应用程序并重新启动它时,所有数据都从备份那里备份,并且一切正常。

如何强制tableview从获取的结果控制器中获取最新信息?或者我该如何强迫

以下是到目前为止我没有成功尝试过的内容:

MasterViewController.m

- (void)viewDidLoad
{
    context = [[OSCDStackManager sharedManager] managedObjectContext];
}

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reloadFetchedResults) name:OSFilesUpdatedNotification object:nil];

- (void)reloadFetchedResults:(NSNotification*)note {
    NSError *error = nil;
    if (![[self fetchedResultsController] performFetch:&error]) {
        NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
        abort();
    }
    if (note) {
        [self.tableView reloadData];
    }
}


- (void)controllerDidChangeContent:(NSFetchedResultsController *)controller
{
    NSError *error = nil;
    [self.fetchedResultsController performFetch:&error];
    [self.tableView endUpdates];
    [self.tableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)

从tableview的手动刷新下拉菜单中...

-(void) updateTable{
    context = [[OSCDStackManager sharedManager] managedObjectContext];
    NSError *error = nil;
    [self.fetchedResultsController performFetch:&error];
    //[self.tableView …
Run Code Online (Sandbox Code Playgroud)

core-data objective-c uitableview nsfetchedresultscontroller ios

5
推荐指数
1
解决办法
5147
查看次数

iOS swift中的合奏

我想使用来自github的Drew McCormack的Ensembles来缓解我目前的iOS/swift/coredata/iCloud引发的头痛.所有Ensembles示例都在Objective-C中.我在项目中将它作为一个框架,但作为一个周末编码器,我无法推断如何从ObjC示例代码中使用它.

有没有人看过使用swift的合奏方法?

添加:我有它作为一个框架,但我如何设置它并让它开始Leching?Obj-C的方式是

//SetupEnsemble
cloudFileSystem=[[CDEICloudFileSystemalloc] initWithUbiquityContainerIdentifier:@"container"];
ensemble=[[CDEPersistentStoreEnsemblealloc]initWithEnsembleIdentifier:@"MainStore" persistentStoreURL:storeURL
        managedObjectModelURL:modelURL
cloudFileSystem:cloudFileSystem]; ensemble.delegate=self;
Run Code Online (Sandbox Code Playgroud)

然后是利奇

if(!ensemble.isLeeched){
[ensemble leechPersistentStoreWithCompletion:^(NSError *error) {
if (error) NSLog(@"Could not leech to ensemble: %@", error); }];}
Run Code Online (Sandbox Code Playgroud)

core-data ios swift ensembles

5
推荐指数
1
解决办法
727
查看次数

Javascript onclick函数适用于除FF和IE之外的所有内容

我已经在javascript中编写了一个简单的测验,它在我选择的浏览器中工作正常,但是当我在IE和FF中测试它时按钮不起作用.我得到一个"ReferenceError:Option1button()未定义"

即使在这一小段代码中我也得到了同样的错误:

<!DOCTYPE HTML >
<html><head><title></title></head>
    <body onload="loadPlayer();">
        <script type="text/javascript">
            function Option1button(){
                document.getElementById("op1").style.display = 'none';
            }
            function loadPlayer() {
                document.write("<div id=\"op1\"><button onclick='Option1button()'>choose</button> OPTIONS <br></div>");
            }
        </script>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript firefox internet-explorer

0
推荐指数
1
解决办法
81
查看次数

如何设置Fabric js仅查看?

我试图在Fabric.js中显示以前保存的图形,然后将其变成仅视图,没有编辑模式。这是我所拥有的:

canvas1.loadFromJSON(cavasData, canvas1.renderAll.bind(canvas1));
canvas1.isDrawingMode = false;
canvas1.deactivateAll();
canvas1.selection = false;
Run Code Online (Sandbox Code Playgroud)

但这并非不可动摇。可以正常显示,但是对象仍然可以选择和更改。

fabricjs

0
推荐指数
1
解决办法
1055
查看次数