невозможно отобразить заголовок навигации в таблице в приложении iPhone - PullRequest
0 голосов
/ 20 июля 2010

Я хочу задать вопрос о приложении для iPhone.Я пишу программу, которая будет отображать таблицу.Однако я не знаю, почему я не могу отобразить заголовок навигации в таблице.Ниже приведен мой код

// code

- (void)viewDidLoad {

    [super viewDidLoad];

    // control flow, call another user define function and add the items to the table   
    [self flowControl];

    //Set the title     
    self.navigationItem.title = @"Table Title Hello";

    // can see  
    // NSLog(@"self.navigationItem.title: %@", self.navigationItem.title);

}

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

// ---------- Обновление 1 --------------

Код в[self flowControl] вызовет две функции, каждая из которых предназначена для добавления элементов, например, [displayNameArray addObject:@"John Chan"];

// ---------- Обновление 2 --------------- В моей программе 2 контроллера вида.

1) MyViewController

2) SimpleTableView

Первый используется для разрешенияпользователь вводит информацию, второй используется для отображения содержимого в формате таблицы.

Мой проект называется USERPROJECT

//The following is the content of the .m
#import "MyViewController.h"
#import "USERPROJECT.h"
#import "SimpleTableView.h"

@implementation USERPROJECT

@synthesize window;
@synthesize myViewController;


- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    MyViewController *aViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:[NSBundle mainBundle]];
    [self setMyViewController:aViewController];
    [aViewController release];

    UIView *controllersView = [myViewController view];
    [window addSubview:controllersView];

    // Override point for customization after application launch
    [window makeKeyAndVisible];
}


- (void)dealloc {
    [myViewController release];
    [window release];
    [super dealloc];
}

@end 

И это один из содержимого в MyViewController.m ', я использую это для переключения на элемент управления с «MyViewController.m» на «SimpleTableView.m»

- (void) switchPageShowTable {

    NSLog(@"%d: switchPageShowTable", order);
    order++;

    SimpleTableView *simpleTableView = [[SimpleTableView alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:simpleTableView animated:YES]; 

}

Это влияет на использование «self» в заголовке вызова?Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 20 июля 2010

Заголовок, который вы ожидаете увидеть, отображается на панели навигации, которая обычно является частью UINavigationController. Чтобы это работало, вам нужно сделать следующее:

SimpleTableView *simpleTableView = [[SimpleTableView alloc] initWithNibName:nil bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController: simpleTableView];
[self presentModalViewController:navController animated:YES];
[simpleTableView release];
[navController release];

И (маленький щупальца) вместо

self.navigationItem.title = @"Table Title Hello";

Вы можете сделать это:

self.title = @"Table Title Hello";

, если у вас нет причин явно использовать навигационный элемент.

0 голосов
/ 20 июля 2010

Это представление, которое вы пытаетесь загрузить подкласс UITableViewController?

А что конкретно делает [self flowControl]?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...