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

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.60
HellBoy4eG
7 / 7 / 1
Регистрация: 15.10.2013
Сообщений: 19
#1

Как получить доступ к изменению переменной из другого класса? - Objective-C

15.10.2013, 14:51. Просмотров 1351. Ответов 7
Метки нет (Все метки)

Это наверное клупый вопрос, но я не могу его решить!
создал таблицу с тремя элементами в основе лежит массив с тремя обьектами(словарями).Словари с ключами имя и картинка.
на панель навигации добавил кнопку которая открывает другой вью контроллер, в этом контроллере я задаю имя и добавляю картинку из библиотеки, тоесть создаю еще один словарь.

пытаюсь добавить в массив из таблицы еще один обьект, все это происходит в классе вью контроллера, ничего не выходит(( при создании обьекта класса таблицы, пишет размер массива - 0, помогите((, если у кого есть примеры хотябы немного похожие на мою ситуацию поделитсь плс!! за ранее спасибо...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 14:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как получить доступ к изменению переменной из другого класса? (Objective-C):

Как получить доступ к объекту другого класса - Программирование iOS
Здравствуйте друзья. Прошу помощи по вопросу В главном viewController cоздаю объект Label и записываю в него текст ...

Как получить доступ к переменным объекта класса-родителя? - Objective-C
Я знаю, что обычно передают указатель на объект класса в функцию чайлда, но вот как это сделать на ObjC никак не могу понять. ...

Как из одного метода обратиться к переменной другого? - Objective-C
Как в методе print вывести переменную f из метода SetC? -(void) setC: (float) f{ celc=(f-32)/1.8f; } -(void) print { ...

Как получить доступ к переменной из другого класса - C#
namespace ViewModel { public class AFViewModel : ViewModelBase { private int _SecPauseDel = 0; public int SecPauseDel ...

Как получить доступ к массиву из другого класса? - C++
Подскажите, есть такой код: switch(o_field.fieldArray) { // Код } Этот код находится в классе А, а массив fieldArray...

Как получить доступ к CardLayout из другого класса? - Java
Здравствуйте, в общем суть вопроса такова. Есть два класса MainClass и SubClass в MainClasss иметься CardLayout и мне надо изменить панель...

7
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
15.10.2013, 15:06 #2
Код бы ваш посмотреть
0
zulkis
15.10.2013, 15:35
  #3

Не по теме:

АццкийМальчик... Какой ник, такое и объяснение проблемы...

0
HellBoy4eG
7 / 7 / 1
Регистрация: 15.10.2013
Сообщений: 19
15.10.2013, 15:46  [ТС] #4
2 класса : TableViewController отвечающий за таблицу, и ViewController в котором создается ее один словарь(на самом деле классов много и большо описание но интересут связь имнно мжду этими двумя)


TableViewController.h
@interface TableViewController : UITableViewController
@property(nonatomic,copy)NSMutableArray*arrDictionary;

TableViewController.m
@interface TableViewController ()
@synthesize ImageView;

Добавлено через 9 минут
2 класса : TableViewController отвечающий за таблицу, и ViewController в котором создается ее один словарь(на самом деле классов много и большо описание но интересут связь имнно мжду этими двумя)


TableViewController.h
@interface TableViewController : UITableViewController
@property(nonatomic,copy)NSMutableArray*arrDictionary;

TableViewController.m
@interface TableViewController ()
@synthesize ImageView;
- (void)viewDidLoad
{

[super viewDidLoad];
NSDictionary*d1=[NSDictionary dictionaryWithObjectsAndKeys:dataObj1,@"image",@"Gloria",@"name",nil];
NSDictionary*d2=[NSDictionary dictionaryWithObjectsAndKeys:dataObj2,@"image",@"Alex",@"name",nil];
NSDictionary*d3=[NSDictionary dictionaryWithObjectsAndKeys:dataObj3,@"image",@"Bob",@"name",nil];
arrDictionary=[[NSMutableArray alloc]init];
[arrDictionary addObject:d1];
[arrDictionary addObject:d2];
[arrDictionary addObject:d3];

NSLog(@" did load %i",[arrDictionary count]);// при запуске показывает 3

}

ViewController.h
@interface lastViewController :
UIViewController<UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate>

ViewController.m

-(void)imagePickerControllerUIImagePickerController *)picker didFinishPickingMediaWithInfoNSDictionary *)info
{
UIImage*chosenImage=info[UIImagePickerControllerEditedImage];


lastDict=[NSMutableDictionary dictionaryWithObjectsAndKeys:chosenImage,@"image",@" ",@"name", nil];// создаю словарь
[picker dismissViewControllerAnimated:YES completion:NULL];
NSLog(@"%i",[lastDict count]); // значение 1 тоесть добавляется
TableViewController* table=[[ TableViewController alloc]init];
[table addObjec lastDict];// добавляю в массив
NSLog(@"%i",[table.arrDictionary count]); // выводит значени 0;
0
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
15.10.2013, 18:38 #5
Используйте разметку, пожалуйста.
0
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
16.10.2013, 06:42 #6
Objective-C
1
2
TableViewController* table=[[ TableViewController alloc]init];
[table addObjec lastDict];// добавляю в массив
Когда вы добавляете объект, метод viewDidLoad еще не сработал, ваш arrDictionary == nil
0
HellBoy4eG
7 / 7 / 1
Регистрация: 15.10.2013
Сообщений: 19
16.10.2013, 12:27  [ТС] #7
Поставлю вопрос по другому!!
есть 2 класса,А и Б, в классе А есть массив, как мне из класса Б добавить обькт в массив касса А????
0
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
16.10.2013, 13:14 #8
А в чем конкретно теперь-то у вас проблема?
Вы спрашиваете: почему не добавляется?
Я отвечаю: потому что вы пытаетесь добавить элемент до того, как массив создается
Вы ответ игнорируете и задаете другой вопрос

В классе Б:

Objective-C
1
[a.array addObject:obj];
array создаете либо в ините, либо делаете ленивый геттер:

Objective-C
1
2
3
4
5
6
- (NSMutableArray *)array {
    if (_array == nil) {
        _array = [NSMutableArray array];
    }
    return _array;
}
1
16.10.2013, 13:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2013, 13:14
Привет! Вот еще темы с ответами:

Как получить доступ к методу из другого класса? - C#
public partial class Form1 : Form { private void button1_Click(object sender, EventArgs e) { ...

Как получить значение переменной из другого класса? - C# WPF
Вопрос достаточно простой на первый взгляд, но я чет никак не могу сообразить как его решить:( Заключается в следующем: есть класс...

Как получить доступ к компоненту на форме из другого класса - C++/CLI WinForms
Создал проект, кинул TextBox на форму, добавил в проект свой класс в файле h. Как из него обратиться к TextBox на форме?

Как получить доступ к элементам Form1 из другого класса - C#
Здравствуйте! Нахожусь в начальных этапах обучения языку C# и конечно возникло много вопросов, часть из которых я решил сам. Буду...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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