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

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.83
skavans
23 / 23 / 2
Регистрация: 22.01.2011
Сообщений: 77
#1

MultiView + xCode - Objective-C

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

Всем доброго времени!

Уважаемые форумчане, подскажите, пожалуйста, как реализуется передача значений переменных между разными представлениями (view)?

Грубо говоря, есть задача: сделать приложение из двух view, на одном из которых текстбокс и кнопка, а на втором - метка. Хочется по нажатию кнопки сменить view и во втором в метке отобразить введенное значение.

Работаю через InterfaceBuilder, процесс смены представлений не вызывает проблем (просто создаю связь), так же для кнопки создаю Action, для текстбокса - outlet. В экшене кнопки присваиваю некоторой переменной NSString значение из текстового поля. А вот что дальше - не могу понять. Пробовал импортировать заголовочник первого окна в код второго, переменная становится видна, но вот приложение не компилится таким образом.

Прошу помощи, в гугле не знаю даже какой запрос вбить
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2012, 17:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос MultiView + xCode (Objective-C):

xCode - Objective-C
В общем скачал xCode и книгу BecomeAnXCoder. Оказалось что она устарела уже. По крайней мере я по ней не смог даже консольное приложение на...

С++ в Xcode - Objective-C
Добрый день. Подскажите, как можно компилировать программу в хкоде? #include <stdio.h> #include <iostream> int main() { ...

xcode 5 - Objective-C
Всем добрый день! Кто-нибудь уже попробовал xcode 5 в работе? Прежде чем скачивать, хочется услышать мнения, чтоб не повторить ошибки с iOS...

Xcode на Windows - Objective-C
Подскажите как установить Xcode для Windows?Можно ли через VirtualBox?И какие еще есть способы?

iOS 7 и xcode 4 - Objective-C
Добрый день! У меня на айпаде стоит iOS 7.2, а у xcode версия 4.6. Получается, чтоб тестить приложения на этом айпаде, мне нужно обновить...

xcode лагает - Objective-C
всем привет у меня следующая проблема все фаелы проэкта (код картинки и звук) весят в районе 50-60 метров но вес самой папки проэкта...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
xdozorx
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
03.02.2012, 19:20 #2
skavans,
Цитата Сообщение от skavans Посмотреть сообщение
Всем доброго времени!
Уважаемые форумчане, подскажите, пожалуйста, как реализуется передача значений переменных между разными представлениями (view)?
ето ты имееш в виду между разными екранами? если да, то я в таком случае использую синглетон(класс с которого остальные классы имеют доступ к его данным)http://ru.wikipedia.org/wiki/Singlet...B0_Objective-C
Objective-C
1
2
3
4
5
6
7
@interface Singleton : NSObject {
 NSMutableArray *arr;
}
 
+ (Singleton *)sharedInstance;
 
@end
например у тебя есть класс My_class
чтобы из него обратится к синглетону ты пишеш
Objective-C
1
[[Singleton sharedInstance].arr addobject:@"text"];
только перед етим ты должен его подключить в My_class
skavans
23 / 23 / 2
Регистрация: 22.01.2011
Сообщений: 77
03.02.2012, 19:42  [ТС] #3
Спасибо большое!
Правда я пока ждал, нашел еще одно решение, может кому-то будет полезно..

Каждое представление (view) имеет свой класс (к примеру ViewController). Соответственно, имея 2 представления, имеем 2 класса. К примеру нужно получить доступ к переменной myVar класса FirstViewController из класса SecondViewController. Тогда делаем вот что:

FirstViewController.h
Objective-C
1
2
3
@interface ViewController : UIViewController
+(NSString*)myVarAccessor;
@end
Мы добавили в заголовок класса прототип аксессора к нашей переменной.

FirstViewContoller.m
Objective-C
1
2
3
4
5
static NSString* myVar;
 
+(NSString*)myVarAccessor {
return myVar;
}
Объявили статическую переменную и написали код аксессора к ней.

Последнее действие - импортировать заголовок первого класса во второй:

SecondViewController.m
Objective-C
1
#import "FirstViewController.h"
Теперь можно легко получить значение переменной из класса 2, вот таким образом:
Objective-C
1
[FirstViewController myVarAccessor]
xdozorx
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
03.02.2012, 20:03 #4
skavans, через синглетон делать удобнее, только я забыл написать, там еще надо сделать
C
1
@property (nonatomic,retain) NSMutableArray *переменная;
и в классе .m сделать
C
1
@synthesize переменная;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2012, 20:03
Привет! Вот еще темы с ответами:

xCode глючит? - Objective-C
Прошу прощения, но я не понимаю. Вот код: #import "Menu.h" @interface Game : UIView { Menu *menuScene; }xCode выделяет...

Эмулятор iPhone на Xcode - Objective-C
Добрый день. Есть ли возможность тестировать приложения на iPhone, который подключен по USB к компу на Xcode? Аккаунта разработчика...

xcode и настройки айфона - Objective-C
доброго времени суток. облазил документации по xcode'y, и гуглил, но найти, что искал, так и не смог. Максимум, что я нашел, это...

Настройка проекта Xcode 5.0.1 - Objective-C
* Проект Cocoa Framework, в результате компиляции получаем продукт - framework. Где в настройках XCode 5.0.1 указать путь для его...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.02.2012, 20:03
Ответ Создать тему
Опции темы

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