Форум программистов, компьютерный форум CyberForum.ru

Как записать данные в соответствующую категорию с Core Data? - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Исчезает разделитель при скролле UITableView http://www.cyberforum.ru/objective-c/thread1304867.html
При скролле вверх разделитель исчезает Есть способ исправить это?
Objective-C Хранение изображений Может кто-нибудь привести пример кода записи изображения на диск iPhone и загрузки с него, пожалуйста :P http://www.cyberforum.ru/objective-c/thread1301948.html
Работа со звуком Objective-C
Доброго времени суток, господа! Я новичок в Objective-C и у меня возникла потребность в использовании аудио. Прошу помочь мне разобраться в этом деле - скинуть сурсы на инфу или еще чего-нибудь, от себя скажем. Говорю сразу - весь сайт developer.apple я уже облазил и не очень понял все равно. Мне нужно чтобы при нажатии на кнопку издавался определенный звук который есть на машине. З.Ы....
Вывод дроби посредством ООП Objective-C
Всем привет. Начал изучать Objective-c по книге Кнута С. Выполняю задание, написал все как там (может где-то ошибся проверьте), но xCode ругается при компилировании программы. Почему? #import <Foundation/Foundation.h> @interface Fraction: NSObject { int numerator; int denominator; -(void) print;
Objective-C Получить объект по адресу в памяти http://www.cyberforum.ru/objective-c/thread1300721.html
Здравствуйте! Как получить объект в (lldb) по его адресу в памяти? Через image lookup не получается - выводится пустая строка.
Objective-C Ошибка Undefined symbols for architecture x86_64 Коллеги новичёк в objective-c. Столкнулся с такой проблемой Undefined symbols for architecture x86_64. С чем она может быть связана?! подробнее

Показать сообщение отдельно
ermolushka
0 / 0 / 0
Регистрация: 19.08.2014
Сообщений: 5

Как записать данные в соответствующую категорию с Core Data? - Objective-C

19.11.2014, 17:06. Просмотров 877. Ответов 3
Метки (Все метки)

У меня есть Table View, где перечислены каталоги (Английский, Испанский, Китайский). Зайдя в каталог, я могу создать новую запись ( за это отвечает View Controller). При создании записи, она появляется во всех трех каталогах (англ, испан и кит). Как сделать так, чтобы она появилась лишь в соответствующем каталоге? Использовал Core Data.



Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#import "CardTableViewController.h"
@import CoreData;
 
@interface CardTableViewController ()
 
@property (strong) NSMutableArray *collections;
 
@end
 
@implementation CardTableViewController
 
- (NSManagedObjectContext *)managedObjectContext
{
    NSManagedObjectContext *context = nil;
    id delegate = [[UIApplication sharedApplication] delegate];
    if ([delegate performSelector:@selector(managedObjectContext)]) {
        context = [delegate managedObjectContext];
    }
    return context;
}
 
- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    
    // Fetch the devices from persistent data store
    NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"Collection"];
    self.collections = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
    
    [self.tableView reloadData];
}
 
 
 
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
#pragma mark - Table view data source
 
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
#warning Potentially incomplete method implementation.
    // Return the number of sections.
    return 1;
}
 
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
#warning Incomplete method implementation.
    // Return the number of rows in the section.
    return self.collections.count;
}
 
 
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
    
    
    // Configure the cell...
    NSManagedObject *collection = [self.collections objectAtIndex:indexPath.row];
    [cell.textLabel setText:[NSString stringWithFormat:@"%@", [collection valueForKey:@"name"]]];
   
  
    
    return cell;
}
 
 
 
// Override to support conditional editing of the table view.
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
    // Return NO if you do not want the specified item to be editable.
    return YES;
}
 
 
 
// Override to support editing the table view.
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    
    NSManagedObjectContext *context = [self managedObjectContext];
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        // Delete object from database
        [context deleteObject:[self.collections objectAtIndex:indexPath.row]];
        
        NSError *error = nil;
        if (![context save:&error]) {
            NSLog(@"Can't Delete! %@ %@", error, [error localizedDescription]);
            return;
        }
        
        // Remove device from table view
        [self.collections removeObjectAtIndex:indexPath.row];
        [self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
    }
}
 
@end
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#import "CardEditViewController.h"
@import CoreData;
 
@interface CardEditViewController ()
 
 
 
@end
 
@implementation CardEditViewController
 
- (NSManagedObjectContext *)managedObjectContext {
    NSManagedObjectContext *context = nil;
    id delegate = [[UIApplication sharedApplication] delegate];
    if ([delegate performSelector:@selector(managedObjectContext)]) {
        context = [delegate managedObjectContext];
    }
    return context;
}
 
- (IBAction)cancel:(id)sender {
    [self.navigationController popViewControllerAnimated:YES];
    
}
 
- (IBAction)save:(id)sender {
    NSManagedObjectContext *context = [self managedObjectContext];
    
    // Create a new managed object
    NSManagedObject *newCollection = [NSEntityDescription insertNewObjectForEntityForName:@"Collection" inManagedObjectContext:context];
    [newCollection setValue:self.nameCommon.text forKey:@"name"];
 
    
    NSError *error = nil;
    // Save the object to persistent store
    if (![context save:&error]) {
        NSLog(@"Can't Save! %@ %@", error, [error localizedDescription]);
    }
    
    [self.navigationController popViewControllerAnimated:YES];
}
 
 
 
 
 
@end
Objective-C
1
2
3
4
5
6
7
8
9
10
#import <UIKit/UIKit.h>
 
@interface CardEditViewController : UIViewController
 
@property (weak, nonatomic) IBOutlet UITextField *nameCommon;
 
- (IBAction)save:(id)sender;
- (IBAction)cancel:(id)sender;
 
@end
Entity: Collection, attributes: name, type: String
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru