Как использовать removeAllObjects
в RLMArray
? Я получаю ошибку 'RLMException', reason: 'Attempting to mutate a readOnly RLMArray'
.Как использовать `removeAllObjects` в` RLMArray`
#import "ViewController.h"
#import <Realm/Realm.h>
#import "Person.h"
@interface ViewController()
@property RLMArray *list;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
_list = [Person allObjects];
NSLog(@"%@", _list);
}
- (void)didReceiveMemoryWarning{
[super didReceiveMemoryWarning];
}
- (IBAction)addPerson:(id)sender {
Person *human = [[Person alloc] init];
human.name = @"John";
human.title = @"Wizard";
RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];
[realm addObject:human];
[realm commitWriteTransaction];
}
- (IBAction)removePerson:(id)sender {
RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];
[_list removeAllObjects];
[realm commitWriteTransaction];
}
@end
Я не знаю, что происходит, но вы используете '[_list removeAllObjects]' , но перед этим вы используете '[realm addPerson];' , может быть, это что-то здесь? –
Я имею в виду, может быть, вы должны использовать '[realm removeAllObjects];', Извините, если мне не помогли, я просто попробовал –
Попробуйте '[realm deleteObjects: _list];' возможно? – rfj001