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

Хранение данных в plist - Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование iOS/iPhone Хранение введенных данных http://www.cyberforum.ru/ios-dev/thread923129.html
Подскажите, пожалуйста, как хранить данные, чтобы доступ к ним можно было получить из любого класса приложения? Например, в приложении на основе TabBarController в одной вкладке пользователь нажимает кнопку, событие присвоило переменной knopka значение YES, как передать это другой вкладке? Передавать переменную каждый раз при переходе на новую вкладку или создать где-то еще свойство и...
Программирование iOS/iPhone SQlite Недавно создавал тему по общим вопросам, теперь хотелось бы более конкретнее узнать, вот нашел как заполнить бд http://www.imaladec.com/story/sqlite переделать этот туториал под мой "чат" я смогу, а вот как сделать что бы если приложение заполнено на 2 устройствах, как сделать что бы после отправки в бд записи с первого устройства, оно сразу же отобразилось на втором, тоесть как чат,... http://www.cyberforum.ru/ios-dev/thread923108.html
Как из одного ViewController изменить свойства другого? Программирование iOS/iPhone
Здравствуйте! У меня приложение на UITabBarController, я хочу чтобы если пользователь нажал кнопку в 1 вью, во втором отобразилась надпись "кнопка нажата". Я пробовал так: Создал свойство myText и связал UILabel во втором вью @property (nonatomic, retain) NSString *myText; @property (weak, nonatomic) IBOutlet UILabel *label2; И добавил -(void)viewDidAppear:(BOOL)animated { ...
В каком виде хранить объемный текст? Программирование iOS/iPhone
Всем привет! В iOS я начинающий, поэтому и вопрос соответствующий: Делаю простое, как табуретка приложение - имеется TableView, при нажатии на элемент списка пользователю отображается определенный, немаленький текст. С функционалом проблем нет, все работает, как надо, но хотел бы поинтересоваться, в каком виде лучше хранить ту самую "объемную текстовую информацию" для каждого пункта списка? ...
Программирование iOS/iPhone Определение объекта при нажатии http://www.cyberforum.ru/ios-dev/thread922523.html
Есть 2 объекта на сцене. Как лучше реализовать такую функцию: При нажатии на экран нужно определить находится ли по координатам нажатия объект (ну и сам объект). Использую Cocos2d и Box2d
Программирование iOS/iPhone мини чат под Ios Вообщем хочу сделать в своей програмке не большой чатик, и пока не приступил появилось немного вопросов по скольку никогда не делал такого. Вообщем кнопка сенд оправляет на мой сервер в определенную таблицу само сообщение+ ник отправившего+время, а в таблице дополнительное поле для индексирование, что бы отображались сообщения одно за другим, так ли это? Второй вопрос, к примеру 2 человека в... подробнее

Показать сообщение отдельно
13Ori31
1 / 1 / 0
Регистрация: 11.03.2013
Сообщений: 43
17.07.2013, 11:58  [ТС]     Хранение данных в plist
Привет.
выбрал для себя я core data.
Подсмотрел пример «Раскрывающаяся таблица» с сайта Imaladec, только там данные из NSDictionary и попробовал
реализовать вывод данных из Двух связанных между собой сущностей Факультет(А) и Студент(Б), связь между ними “А
один ко многим Б“ в TableView с раскрывающимися секциями(кнопки с названием факультета).
При нажатии на секцию добавляться строки с Фамилиями студентов в таблицу, под нажатой секцией.
Вот что у меня получилось.
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
117
118
119
120
121
122
 
 
//получаю из базы arrayIntem - массив каждый элемент которого запись из сущности "фокул." и
// с вязаные с ней записи сущности "студ".    isOp -  массив выполняющий роль флагов для каждой
// секции(открыта или закрыта)
(void)viewDidLoad
{
[super viewDidLoad];
 NSError *error = nil;
    AppDelegate *a=[[AppDelegate alloc] init];
    self.managedObjectContext= a.managedObjectContext;
    [a release];
 
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity:[NSEntityDescription entityForName:@"Fokl" 
                    inManagedObjectContext:managedObjectContext]];
 
self.arrayIntem = [NSMutableArray arrayWithArray:[managedObjectContext executeFetchRequest:fetchRequest
                                                                          error:&error] ];
 
isOp=[[NSMutableArray alloc] init];
    for (int i=0;i<[arrayIntem count];i++){
    
        [isOp addObject:[NSNumber numberWithInt:0]];
    }
}
 
 
//добовляеться кнопка в облость секции
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    
    
    NSString *sectionTitle = [[arrayIntem objectAtIndex:section] name];
    BOOL isOpen = [[isOp objectAtIndex:section] boolValue];
    NSString *arrowNmae = isOpen? @"arrowUp":@"arrowDown";
    
    
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    button.frame = CGRectMake(0.0f, 0.0f, 320.0f, 50.0f);
    button.tag = section;
    button.backgroundColor=[UIColor blackColor];
    [button setContentHorizontalAlignment:1];
    
    [button setTitle:sectionTitle
            forState:UIControlStateNormal];
    
    [button addTarget:self
               action:@selector(didSelectSection:)
     
     forControlEvents:UIControlEventTouchUpInside];
    
    [button setImage:[UIImage imageNamed:arrowNmae] forState:UIControlStateNormal];
    
    return button;
}
 
 
//метод вызываемый нажатием на кнопку 
- (void)didSelectSection:(UIButton*)sender{
    
//Создание массива индексов
    NSMutableArray *indexPaths = [NSMutableArray array];
    
    for (int i=0; i<[[[self.arrayIntem objectAtIndex:sender.tag] stud] count]; i++) {
        [indexPaths addObject:[NSIndexPath indexPathForRow:i
                                                 inSection:sender.tag]];
    }
    
    
    //Получение состояния секции
    BOOL isOpen = [[isOp objectAtIndex:sender.tag] boolValue];;
    
    //Установка нового состояния
    isOp[sender.tag]=[NSNumber numberWithBool:!isOpen];
    
    //добавление или удаление ячеек секции
    if (isOpen) {
        [self.tableView deleteRowsAtIndexPaths:indexPaths
                              withRowAnimation:UITableViewRowAnimationTop];
    } else {
        [self.tableView insertRowsAtIndexPaths:indexPaths
                              withRowAnimation:UITableViewRowAnimationTop];
    }
}
 
 
 
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return [arrayIntem count];
    
}
 
 
 
 
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    if ([[isOp objectAtIndex:section] boolValue]) {
    
        return [[[self.arrayIntem objectAtIndex:section] stud] count];
    }
    return 0;
}
 
 
 
 
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 
                                                                          reuseIdentifier:CellIdentifier];
    }
    
    cell.textLabel.text=[[[[[arrayIntem objectAtIndex:indexPath.section] stud]
                                                    allObjects] objectAtIndex:indexPath.row] name];
    return cell;
}
вопрос все ли я так сделал)))

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