2013-05-06 3 views
0

В моем коде я создал этотXcode 4.5 Навигационный контроллер и кнопки назад, как сохранить значения

#import <UIKit/UIKit.h> 

@interface ViewControllerTable : UIViewController <UITableViewDelegate, UITableViewDataSource> 
@property (weak, nonatomic) IBOutlet UITableView *myTableView; 
@property (strong, nonatomic) NSString *plcVar; 
@end 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
listaPlacas *placas = [[listaPlacas alloc]init]; 
[self.navigationController pushViewController:placas animated:YES]; 
} 

Но в другой точки зрения:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
for (UITableViewCell *cell in [tableView visibleCells]) { 
    cell.accessoryType = UITableViewCellAccessoryNone; 
} 
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; 
cell.accessoryType = UITableViewCellAccessoryCheckmark; 
NSString *placaVar = cell.textLabel.text; 
ViewControllerTable *VCT = [[ViewControllerTable alloc]init]; 

VCT.plcVar = [[NSString alloc]init]; 
VCT.plcVar = placaVar; 
} 

Когда я нажимаю кнопку назад значение в переменной plcVar пуст.

ответ

0

Я предполагаю, что «другой вид» - это viewController, который вы нажимаете на свой первый ViewController, и пытаетесь установить свойство в firstViewController из вашего другогоViewController.

Тогда здесь вы ошибетесь:

ViewControllerTable *VCT = [[ViewControllerTable alloc]init]; 

Вы создаете новый экземпляр ДКТ, когда на самом деле вы хотите ссылку на ДКТ, что вы столкнул с.

Вы можете получить это с помощью навигационного контроллера ...

NSArray* viewControllers = [self.navigationController viewControllers]; 
ViewControllerTable* VCT = [viewControllers objectAtIndex: 
            [ viewControllers count]-2]; 
+0

Не работать с этим Conde – user2354996

+0

@ user2354996 - извините, ошибка в коде - я исправил его – foundry

Смежные вопросы