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

Подружить Core Data и iCarousel - Objective-C

Восстановить пароль Регистрация
 
ermolushka
0 / 0 / 0
Регистрация: 19.08.2014
Сообщений: 5
29.01.2015, 19:14     Подружить Core Data и iCarousel #1
Есть entities (Lesson и Card), у одного урока может быть много карточек. Сначала я сделал два table view с добавлением карточек так, чтобы в каждом уроке отображались карточки именно этого урока и все было ок. Но теперь я захотел, чтобы была примерно следующая схема:

table view (Lesson) –> переход на iCarousel (слайдер в виде карточек этого урока и в таб баре кнопка add) –> при нажатии кнопки add переход на View controller и добавление карточки). С добавлением карточки все ок, с первым table view тоже, но не могу добиться отображения карточек в слайдере.

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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#import "CardsScrollViewController.h"
#import "AddCardViewController.h"
#import <CoreData/CoreData.h>
#import "Card.h"
 
@interface CardsScrollViewController ()
 
@property (nonatomic, strong) NSMutableArray *items;
 
@end
 
 
@implementation CardsScrollViewController
@synthesize carousel;
@synthesize items;
 
 
- (NSManagedObjectContext *)managedObjectContext
{
    NSManagedObjectContext *context = nil;
    id delegate = [[UIApplication sharedApplication] delegate];
    if ([delegate performSelector:@selector(managedObjectContext)]) {
        context = [delegate managedObjectContext];
    }
    return context;
}
 
- (void)awakeFromNib
{
   
    
    self.items = [NSMutableArray array];
    NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"Card"];
    NSPredicate* predicate = [NSPredicate predicateWithFormat:@"lesson == %@", self.lesson];
    [fetchRequest setPredicate:predicate];
    items = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
}
 
- (void)dealloc
{
    //it's a good idea to set these to nil here to avoid
    //sending messages to a deallocated viewcontroller
    carousel.delegate = nil;
    carousel.dataSource = nil;
}
 
#pragma mark -
#pragma mark View lifecycle
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    
    //configure carousel
    carousel.type = iCarouselTypeCoverFlow2;
}
 
- (void)viewDidUnload
{
    [super viewDidUnload];
    
    //free up memory by releasing subviews
    self.carousel = nil;
}
 
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return YES;
}
 
#pragma mark -
#pragma mark iCarousel methods
 
- (NSInteger)numberOfItemsInCarousel:(iCarousel *)carousel
{
    //return the total number of items in the carousel
    return [items count];
}
 
- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSInteger)index reusingView:(UIView *)view
{
    UILabel *label = nil;
    
    //create new view if no view is available for recycling
    if (view == nil)
    {
        view = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 200.0f, 200.0f)];
        ((UIImageView *)view).image = [UIImage imageNamed:@"page.png"];
        view.contentMode = UIViewContentModeCenter;
        label = [[UILabel alloc] initWithFrame:view.bounds];
        label.backgroundColor = [UIColor clearColor];
        label.textAlignment = NSTextAlignmentCenter;
        label.font = [label.font fontWithSize:50];
        label.tag = 1;
        [view addSubview:label];
    }
    else
    {
        //get a reference to the label in the recycled view
        label = (UILabel *)[view viewWithTag:1];
    }
    
    //set item label
    //remember to always set any properties of your carousel item
    //views outside of the `if (view == nil) {...}` check otherwise
    //you'll get weird issues with carousel item content appearing
    //in the wrong place in the carousel
    
    Card *card = items[index];
    //[cell.textLabel setText:[NSString stringWithFormat:@"%@", [card valueForKey:@"name"]]];
    label.text = [card valueForKey:@"name"];
    //label.text = [items[index] stringValue];
    
    return view;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2015, 19:14     Подружить Core Data и iCarousel
Посмотрите здесь:

Error BC30466: Namespace or type 'Data' for the Imports 'System.Data' cannot be found Visual Basic .NET
Нужно разъяснение с Core Data
core data newManagedObject setValue:
core data, две сущности
core data запрос на получение суммы атрибута, всех записей
Использование Core Data в статической библиотеке
Objective-C Как записать данные в соответствующую категорию с Core Data?
Как подружить Qt и Objective-C Objective-C
Муки выбора: core data или работа "напрямую" с sqlite
Core Data проверка уникальности записи
Improve Core Data skills
Объявить переменную типа Data и присвоить ей значение из поля Data MS Access

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 14:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru