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

Передача инициализированных переменных из одного класса в другой (objective c, XCODE 5.0.2) - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Taglib Framework Objective-C http://www.cyberforum.ru/objective-c/thread1036623.html
Добрый день! Возникла проблема с подключением библиотеки TagLib к проекту в Xcode. На официальном сайте есть только исходники, и я не знаю, как их правильно подключить. Однако нашел фреймворк (https://github.com/nickludlam/TagLib.framework) и вроде делаю все по инструкции, но при компиляции вылетает множество ошибок (на прикрепленном скриншоте). В общем, мне очень нужна помощь, хоть как, но...
Objective-C Задание параметров объектам через цикл Хочу задать текст объектам подобным образом: for(int i=0; i<=; i++) { array.text = @"алилуя"; } Но компилятор ругается, говорит, что "id" не знает "text". Собственно как можно реализовать? Гуглил, ответов на нашел. Заранее спасибо http://www.cyberforum.ru/objective-c/thread1035218.html
Восстановление работоспособности Objective-C
помогите перебил ОС начисто...теперь не могу запустить приложение...-т е все запускается,но не работает... Ы З проекты копировал на флешку до переустановки ОС-все работало что делать?как починить?
Objective-C релизная сборка приложения под MAC
Интересует можно ли скомпилировать релизную сборку MAC приложения не имея сертификата разработчика. Ведь теоретически debug сборка может работать как самостоятельное приложение, достаточно ее скопировать из той папки где она собралась. Однако релиз сборка более оптимизирована..
Objective-C Интерактивная карта / псевдо карта http://www.cyberforum.ru/objective-c/thread1025836.html
Всем добрый день. Столкнулся с проблемой построения интерактивной карти. Просмотреть такую карту можно на этом сайте - это границы районов... Мне нужно от рисовать такую же псевдо-карту, и при нажатии на той или иной район показать некую инфу, ну для от ловки места нажатия, то логически использовать жест рекогнайзер, й смотреть в какую из границ областей я попал... Есть ли какие-то...
Objective-C Жесты + View Controller Доброго времени суток Облазил кучу топиков стэк оферфлоу, но так и не нашел четкого, доступного ответа на свой вопрос. Собственно сабж: Есть viewcontroller1 и viewcontroller2, соответственно у каждого по .h и .m файлу Как осуществить свайпом справа налево(в первом вью контроллере) переход из первого во второй, а свайпом слева направо(во втором вью контроллере) переход из второго в первый.... подробнее

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

Передача инициализированных переменных из одного класса в другой (objective c, XCODE 5.0.2) - Objective-C

12.12.2013, 00:46. Просмотров 3448. Ответов 14
Метки (Все метки)

Друзья помогите решить задачку! Я в этом деле новичек, поэтому прошу не винить за глупые вопросы))

Итак, создаю приложение для iPhone в XCODE 5.0.2, язык программирования Objective C.

Пишу приложение с несколькими представлениями. В первом представлении (класс FirstViewController) создал текстовые поля для ввода пользователем входных данных.

FirstViewController.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#import <UIKit/UIKit.h>
#import "TIMBrain.h"
 
@interface TIMFirstViewController : UIViewController
 
@property (weak, nonatomic) IBOutlet UITextField *KursDoll_USA;
@property (weak, nonatomic) IBOutlet UITextField *PFR;
@property (weak, nonatomic) IBOutlet UITextField *FFOMS;
@property (weak, nonatomic) IBOutlet UITextField *TFOMS;
 
- (IBAction)textFieldDoneEditing:(id)sender;
- (IBAction)backgroundTap:(id)sender;
 
@end
FirstViewController.m
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
#import "TIMFirstViewController.h"
 
@interface TIMFirstViewController ()
 
@end
 
@implementation TIMFirstViewController
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
 
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
//Прячем клавиатуру при нажатии кнопки done  на клавиатуре
- (IBAction)textFieldDoneEditing:(id)sender {
    [sender resignFirstResponder];
}
 
//Прячем клавиатуру при нажатии на любое свободное пространство на экране
- (IBAction)backgroundTap:(id)sender {
    TIMBrain *brain = [[TIMBrain alloc] init]; //Попытки передавать инициализированные данные
                                                                //в класс TIMBrain
 
    [self.KursDoll_USA resignFirstResponder];
    [self.PFR resignFirstResponder];
    [self.FFOMS resignFirstResponder];
    [self.TFOMS resignFirstResponder];
    NSLog(@"KURS = %@\n", self.KursDoll_USA.text);
    
    [brain setData]; //Попытки передавать инициализированные данные в класс TIMBrain
}
@end
Во втором представлении (класс SecondViewController) всего одна кнопка и одина метка.
SecondViewController.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
#import <UIKit/UIKit.h>
#import "TIMBrain.h"
 
@interface TIMSecondViewController : UIViewController {
    double strah;
}
 
@property (weak, nonatomic) IBOutlet UIButton *CountingData;
@property (weak, nonatomic) IBOutlet UILabel *labelStrahVznos;
- (IBAction)buttonPressed:(id)sender;
- (void)calcScreen;
 
@end
SecondViewController.m
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
#import "TIMSecondViewController.h"
 
 
@interface TIMSecondViewController ()
 
@end
 
@implementation TIMSecondViewController
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
 
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
- (IBAction)buttonPressed:(id)sender {
    TIMBrain *brain = [[TIMBrain alloc] init];
    
    strah = brain.countStrahVznos;
   
    NSLog(@"STRAH_VZNOS = %f\n", strah);
    
    [self calcScreen];
}
 
- (void)calcScreen {
    
    NSString *str = [NSString stringWithFormat: @"%0.16g", strah];
    [_labelStrahVznos setText:str];
    
}
И создал один класс TIMBrain для вычислений:
TIMBrain.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
#import <Foundation/Foundation.h>
#import "TIMFirstViewController.h"
 
@interface TIMBrain : NSObject {
 
    double pfr, ffoms, tfoms, kurs, mrot, pfr_d, ffoms_d, tfoms_d, strah_vznos;
    
}
 
-(double)countStrahVznos;
-(void)setData;
 
@end
TIMBrain.m
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
#import "TIMBrain.h"
 
@implementation TIMBrain
 
-(void)setData {
    TIMFirstViewController *fview = [[TIMFirstViewController alloc] init];
    
    kurs = [fview.KursDoll_USA.text doubleValue];
    pfr = [fview.PFR.text doubleValue];
    ffoms = [fview.FFOMS.text doubleValue];
    tfoms = [fview.TFOMS.text doubleValue];
    NSLog(@"KURS1 = %f\n", kurs);
}
 
-(double)countStrahVznos {
    TIMFirstViewController *fview = [[TIMFirstViewController alloc] init];
    
    NSLog(@"KURS2 = %f\n", kurs);
 
    kurs = [fview.KursDoll_USA.text doubleValue];
    mrot = 11700/kurs;
    NSLog(@"MROT = %f", mrot);
    pfr = [fview.PFR.text doubleValue];
    ffoms = [fview.FFOMS.text doubleValue];
    tfoms = [fview.TFOMS.text doubleValue];
    kurs = [fview.KursDoll_USA.text doubleValue];
    pfr_d = mrot * 12 * pfr;
    ffoms_d = mrot * 12 * ffoms;
    tfoms_d = mrot * 12 * ffoms;
    
    strah_vznos = pfr_d + ffoms_d + tfoms_d;
    
    NSLog(@"MROT = %f\nPFR = %f\nFFOMS = %f\nTFOMS = %f\nSTRAH_VZNOS = %f\n", mrot, pfr_d, ffoms_d, tfoms_d, strah_vznos);
    return strah_vznos;
}
 
@end
Логика программы такова:

В первом представлении пользователь вводит входные данные, затем переходит на второе представление и нажимает кнопку, которая обрабатывает эти данные и выводит результат в метку.

Вопрос заключается в следующем:
Как мне передать введенные данные (уже инициализированные) из класса FirstViewController в класс TIMBrain (в метод countStrahVznos), что бы метод мог обрабатывать эти данные? На данный момент в метод передаются неинициализированные переменные.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru