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

Проблемы с контроллерами - Objective-C

Восстановить пароль Регистрация
 
RGB321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 4
12.07.2013, 17:49     Проблемы с контроллерами #1
ViewController.h:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

@property int a;

@end;

ViewController.m:
...
@synthesize a;
...
-(void) viewDidLoad{
[super viewDidLoad]
a=1;
NSLog(@"a=%i", a);
//показывает a=1
}
...
- (IBAction)button: (id)sender {
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
[appDelegate switchToView2: self.view];
}

Это первый контроллер. Когда я нажимаю кнопку, он переходит на второй контроллер. Все работает. Теперь дальше:

ViewController2:
#import "ViewController.h"
....
-(void) viewDidLoad{
[super viewDidLoad]
ViewController *result=[[ViewController alloc] init];
NSLog(@"a in ViewContolller2 = %i", result.a);
//показывает a=0
}

Почему не передается то значение а, которое получила переменная в первом контроллере?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2013, 17:49     Проблемы с контроллерами
Посмотрите здесь:

Windows XP Проблемы с XP
Visual C++ Проблемы с US.
Objective-C Проблемы со свойством
Проблемы с инетом, не отправляется почта, проблемы со связью с другой организацией Сети
Objective-C Как передавать данные между контроллерами Tab Bar-a
Передача переменной между контроллерами Objective-C
Objective-C Передача аргументов между контроллерами
API SDK и ПО для работы с контроллерами бегущей строки BX-хх (BX-5E3, BX-5M2 и пр.)
Нужен совет\подсказка по связи между 2мя контроллерами AngularJS
Простая задача с контроллерами и представлениями C# MVC
(Jersey 2.2) Как работать с 2 и более контроллерами? Java EE

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
12.07.2013, 18:23     Проблемы с контроллерами #2
Ну как я понял... ты думаешь что эти строки:
Objective-C
1
[[ViewController alloc] init];
Каким то магическим способом вызывают метод viewDidLoad, в котором и инициализируется твоя переменная...
RGB321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 4
12.07.2013, 18:27  [ТС]     Проблемы с контроллерами #3
И как тогда сделать?
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
12.07.2013, 18:30     Проблемы с контроллерами #4
Инициализируй тогда переменую в методе init, который ты собственно и вызываешь
Objective-C
1
2
3
4
5
6
7
- (id)init {
    self = [super init];
    if (self) {
        a = 10;
    }
    return self;
}
RGB321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 4
12.07.2013, 19:48  [ТС]     Проблемы с контроллерами #5
Мне нужно, чтобы в первом контроллере совершались кое-какие действия, а результат выводился во втором.

Добавлено через 14 минут
Все, разобрался, спасибо большое
Yandex
Объявления
12.07.2013, 19:48     Проблемы с контроллерами
Ответ Создать тему
Опции темы

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