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

Не вызывается dealloc в UIViewController при popViewControllerAnimated - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Сохранение в файл выходного потока из AVAudioEngine http://www.cyberforum.ru/objective-c/thread1671227.html
Доброго времени суток. Возникла задача - сохранить выходной поток с AVAudioEngine в файл. В интернете информации по этому поводу мало, единственное найденное решение было взято из темы на StackOverflow: http://stackoverflow.com/questions/30679061/can-i-use-avaudioengine-to-read-from-a-file-process-with-an-audio-unit-and-writ И всё бы хорошо, но на iPad'е, а также при подключенных наушниках...
Objective-C Сочетание клавиш {.} есть ли сочетание клавиш которое сворачивает контент всех блоков кода в операторских скобках {...} ? http://www.cyberforum.ru/objective-c/thread1670451.html
Objective-C Всплытие события в родительское view, возможно ли реализовать
здравствуйте, интересует вопрос, есть uiview внутри него - scrollview, внутри , допустим 20 кнопок, можно ли сделать что-то вроде этого: родительское вью подписывается на клик по самому себе, а в таргете события в хэндлере приходит ссылка на кнопку( то есть событие клика кнопки - всплыло во вью), на которую мы нажали. Чтобы не добавлять слушателя на каждую кнопку (их ведь может быть 100500 штук).
Как из Date Picker'a время записать в переменную? Objective-C
Хочу использовать Date Picker для установки времени таймера, а как из него (Date Picker) получить секунды не знаю. Пробовал - , выдает ошибку "Expected ']'", хотя вроде все скобки на месте. Я совсем новичок-:) Добавлено через 50 минут нашел ошибку: не nil @slector(updateTimer) forControlEvents:UIControlEventValueChange] а
Objective-C Не могу разобраться с категориями в Objective C http://www.cyberforum.ru/objective-c/thread1668685.html
Задание: Заменить alloc init autorelease на NSOBject категорию с методом object На данный момент вот такая реализация, но она не рабочая! Что не так? и в правильном ли я направлении? // NSObject+object.h // // Created by Admin on 22.02.16. // Copyright © 2016 Admin. All rights reserved. //
Objective-C Drag n drop внутри формы Как сделать перетаскивание элементов в окне на objective-c? Нужно чтобы в окне было n элементов, и 3 поля. После перетаскивания по одному элементу на поле должно записываться значение в переменную о правильности перетащенных элементов (вроде викторины с d&d) подробнее

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

Не вызывается dealloc в UIViewController при popViewControllerAnimated - Objective-C

27.02.2016, 15:03. Просмотров 333. Ответов 2
Метки (Все метки)

Здравствуйте! есть такой код

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
@interface MainController ()
 
@property (strong,nonatomic) Model *model;
@property (strong,nonatomic) NSString *addingNoteText;
@property (strong,nonatomic) NotesList *notesList;
 
 
@end
 
@implementation MainController
 
-(id) init
{
    self = [super initWithRootViewController:[self createRootController]];
    self.model = [[Model alloc] init];
    
  
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(noteAdded:) name:@"add_entry_loaded" object:nil];
    return self;
}
 
-(void) noteAdded:(NSNotification *)notification
{
    NSLog(@"NOTE ADDED");
 
    //[self popViewControllerAnimated:YES];  // ( 2 )
}
 
-(NotesList *) createRootController
{
    self.notesList = [[NotesList alloc] initWithModel:self.model];
    
    __weak MainController *weakSelf = self;
    
    self.notesList.addNoteBlock = ^{
 
        AddNoteController *addNoteController = [[AddNoteController alloc] init];
        addNoteController.addNoteBlock = ^(NoteModel *noteModel){
            
            weakSelf.addingNoteText = noteModel.text;
            [weakSelf.model addNote:noteModel.text];
            [weakSelf popToViewController:weakSelf.notesList animated:YES];  // ( 1 )
        };
        [weakSelf pushViewController:addNoteController animated:YES];
    };
   
    self.notesList.detailNoteBlock = ^(NoteModel *noteModel){
        
        DetailNoteController *detailController = [[DetailNoteController alloc] initWithNoteModel:noteModel];
       [weakSelf pushViewController:detailController animated:YES];
    };
    
    return self.notesList;
}
 
- (void)viewDidLoad {
    [super viewDidLoad];
}
-(void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
-(void) dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}
суть его в том что мы имеем NavigationController с кнопкой "добавить" в навбаре , при нажатию на которую переходим на AddNoteController (в нем есть текстовое поле и кнопка сохранить, при нажатии на которую запись сохраняется в rootViewController - здесь это NotesList) . Если [self popViewControllerAnimated:YES]; вызывается из блока (2), то Контроллер навигации переходит на Рутовый контроллер а у AddNoteController вызывается Dealloc , но если нам нужно подождать пока придет ответ с сервера, что запись сохранена(строка (1)), то после вызова [self popViewControllerAnimated:YES]; вызов dealloc не происходит, подскажите пожалуйста чем это может быть вызвано вроде нигде нет retain- циклов.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru