табличное представление выбранного метода индекса не работает (push) - PullRequest
0 голосов
/ 28 октября 2011

есть вид таблицы на первой вкладке моей панели приложений. Затем, когда вы щелкнете по любой строке, я хочу сделать нажатие представления secondviewController. и есть ярлык. Текст метки должен быть выбранным текстом строки. Я пытаюсь это, но не войти на вторую вкладку: S Как я могу это сделать ??? Также во втором классе ViewController есть 3 вида.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

SecondViewController  *detailViewController = [[SecondViewController alloc] initWithNibName:@"SecondView" bundle:nil];
// ...
// Pass the selected object to the new view controller.
NSUInteger row2 = [indexPath row];
denemelik=row2;

[self.navigationController pushViewController:detailViewController animated:YES];
detailViewController.enyakinfirma.text= [ws2.CustomerName objectAtIndex:[indexPath row]]; 
NSLog(@"kontrol2 %@",ws2.CustomerName);

[detailViewController release];

}

1 Ответ

0 голосов
/ 28 октября 2011

Я предполагаю, что enyakinfirma - это ваш UILabel, который вы хотите заполнить текстом. Вы не можете назначить текст метке до того, как метка будет фактически создана и загружена. И это происходит позже, после нажатия на новый контроллер представления.

Таким образом, вам нужно создать отдельный @property, чтобы отслеживать нужный вам текст:

// SecondViewController.h
@interface SecondViewController {
    NSString *customerName;
}    
@property (nonatomic, retain) NSString *customerName;
@end

При создании контроллера представления вы назначаете это свойство:

detailViewController.customerName = ...;

И в методе viewDidLoad вашего контроллера представления вы обновляете текст.

-(void)viewDidLoad {
    // ...
    enyakinfirma.text = self.customerName;
}
...