Как получить данные от просмотра в uitabbarcontrollerIOS

Программируем под IOS
Ответить
Anonymous
 Как получить данные от просмотра в uitabbarcontroller

Сообщение Anonymous »

У меня есть uitabbarcontroller , который имеет 3 uiviewcontrollers . Каждый контроллер имеет несколько Uitextfields . В uitabbarcontroller - это кнопка «Сохранить». Пожалуйста, как я могу получить данные от uitextfields в uiviewcontrollores ? Мне нужны данные от всех uitextfields и от всех uiviewcontrollers в uitabbarcontroller (в кнопке Save of Save). Как я могу это сделать? Спасибо. У класса есть одно текстовое поле. В StudentVc.m это код:
#import
#import "CoreDataHelper.h"

@interface StudentVC : UIViewController

@property (strong, nonatomic) NSManagedObjectID *selectedStudentID;
@property (strong, nonatomic) IBOutlet UIScrollView *scrollView;
@property (strong, nonatomic) IBOutlet UITextField *studentNameTextField;

@end
< /code>
StudentNametextfield связан с полевой платой в раскадровке. Тогда у меня есть класс для Tabbar. Имя класса IS StudentTBC. В файле StudentTbc.m у меня есть этот код:
- (void)viewDidLoad
{
if (debug == 1) {
NSLog(@"Running %@ '%@'", self.class, NSStringFromSelector(_cmd));
}
[super viewDidLoad];

StudentVC *studentVC = [self.tabBarController.viewControllers objectAtIndex:0];
studentVC.studentNameTextField.text = @"asad";
}
< /code>
Итак, когда я захожу на Tabbar, я увижу в Studentnametextfield текст "Asad", но поле ясное ... так что я добавил также в Ibaction: Сохраните этот код: < /p>
- (IBAction)save:(id)sender {
if (debug == 1) {
NSLog(@"Running %@ '%@'", self.class, NSStringFromSelector(_cmd));
}

StudentVC *studentVC = [self.tabBarController.viewControllers objectAtIndex:0];
NSString *string = studentVC.studentNameTextField.text;
NSLog(@"string:%@", string);
< /code>
Но когда я вставляю поле и нажимаю «ulozit» (его сохранение в чешском), я получаю «строку: null» вместо «String: textwhichiwritetofield». Я попробовал индексы 0,1,2, но ничего не работает. :/
отредактировано 3.4 15:20
Я сделал ход своего приложения. В первой части моя раскадровка - UitabbarController и 3UiviewControllers. Я удалил навигационный контроллер. Во второй части я снова делаю розетки. Третья часть - это код сохранения функции (код может быть написан содержимое Textfield) и код ViewDidload of TabbarController (код может быть установлен строку текстового поля). Последней частью является запуск приложения (результат в консоли - NULL String и Clear Textfield). < /P>
Я также пробовал распечатать это: < /p>
NSInteger countOfViews = [self.tabBarController.viewControllers count];
NSLog(@"count:%ld", (long)countOfViews);
< /code>
Это должно быть три? или? Потому что мой результат был 0 .. Почему? :/
Мой фильм: Я попробовал все варианты, но ничего не сработало ... поэтому я сделал новое простое приложение, где только один uitabbarcontroller с двумя uiviewcontrollers и одним UitableViewController (из -за навигационной панели). Пожалуйста, скачайте проект и попробуйте сами. Только запустите, затем нажмите кнопку «Вкладка», и вы находитесь в UitabbarController. Когда вы нажимаете кнопку «Сохранить», она должна отображать количество UiviewScontrollers и значение Textfields. Не могли бы вы попробовать сказать мне, что случилось? Спасибо. Вот проект:
https://www.dropbox.com/s/r4jlzadr2us00ad/tbc.zip

Подробнее здесь: https://stackoverflow.com/questions/228 ... controller
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»