uitabbarcontroller + uitableviewcontroller + uiviewcontroller - PullRequest
0 голосов
/ 09 февраля 2010

Я использую код, извлеченный из URL http://www.iphonemusings.com/2009/01/iphone-programming-tutorial-creating.html, чтобы показать начальный экран с панелью вкладок и представлением таблицы на обеих вкладках. Он также отображает текст в ячейках после внесения необходимых изменений в делегат табличного представления. Теперь я хочу показать представление по щелчку таблицы. Я использую следующий код.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    Latest* evnt = (Latest*)[latestArray objectAtIndex:indexPath.row];
    NSString* url = [evnt URLLink];
    DetailedView* dv = [[DetailedView alloc] init];
        [dv.label setText=@"Testing label"];
    [self.navigationController pushViewController:dv animated:YES];
    [dv release];
}

Но текст не отображается. Может ли кто-нибудь помочь мне, указав, какая ошибка в моем коде ???

Ответы [ 3 ]

1 голос
/ 09 февраля 2010

Это компилируется? [dv.label setText=@"Testing label"]; не является Objective-C. Следует читать:

[dv.label setText:@"Testing label"];
0 голосов
/ 26 июня 2012

скопируйте весь этот код и вставьте его в существующий, он будет работать.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    Latest* evnt = (Latest*)[latestArray objectAtIndex:indexPath.row];
    NSString* url = [evnt URLLink];
    DetailedView* dv = [[DetailedView alloc] init];

    [self.navigationController pushViewController:dv animated:YES];
 [dv.label setText=@"Testing label"];
    [dv release];
}
0 голосов
/ 26 июня 2012
-(void)viewDidLoad
{
    UIView *contentView = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
    contentView.backgroundColor = [UIColor whiteColor];
    self.view = contentView;

    ChatsViewController *chats=[[ChatsViewController alloc] initWithNibName:@"ChatsViewController" bundle:nil];

    UINavigationController *searchNav = [[UINavigationController alloc] initWithRootViewController:chats];  
    chats.title=@"Chats";

    ContactsViewController *contacts=[[ContactsViewController alloc] initWithNibName:@"ContactsViewController" bundle:nil];
    UINavigationController *contacts1 = [[UINavigationController alloc] initWithRootViewController:contacts]; 

    contacts.title=@"Contacts";

    UITabBarController *tabBarController = [[UITabBarController alloc] init];
    tabBarController.view.frame = CGRectMake(0, 0, 320, 460);

    [tabBarController setViewControllers:[NSArray arrayWithObjects:searchNav,contacts1,accounts1,settings1, nil]];

    [self.view addSubview:tabBarController.view];
}

Попробуйте этот код. Код будет отображать UITabBarController с двумя вкладками. Вы можете создать таблицу в обеих вкладках. В didSelectRowAtIndexPath напишите код для push-представления, используя navigationController. Когда вы выбираете строку в таблице, она отображает новый вид.

SignInViewController *signIn=[[SignInViewController alloc] initWithNibName:@"SignInViewController" bundle:nil];

[self.navigationController pushViewController:signIn animated:YES];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...