Помогите с отображением UITabBarController - PullRequest
0 голосов
/ 07 апреля 2011

Я создал собственный Tabbarcontroller для моего приложения. Теперь у меня есть пользовательский интерфейс, где внизу я хочу отобразить мой tabviewcontroller без каких-либо кнопок. И когда пользователь нажимает на любую кнопку, он загружает соответствующий вид выбранного элемента панели вкладок. Каким-то образом мой код ниже не работает. он отображает белый экран вместо моего экрана uiview и не отображает панель вкладок внизу.

#import <UIKit/UIKit.h>
#import "UICustomTabViewController.h"

@interface AssignmentViewController : UIViewController<UITabBarDelegate, UITableViewDelegate,UITableViewDataSource> {
    NSMutableArray *listAssignments;
    NSMutableArray *staffImages;
    UICustomTabViewController *tabViewController;
    }

@property (nonatomic, retain) UICustomTabViewController *tabViewController;

@end
- (void)viewDidLoad {


    UICustomTabViewController *tvController = [[UICustomTabViewController alloc] initWithNibName:@"TabViewController" bundle:nil];

    self.tabViewController = tvController;  

    [self.view addSubview:tvController.view];

    listAssignments = [[NSMutableArray alloc] init];
    staffImages = [[NSMutableArray alloc] init];

    //Add items
    [listAssignments addObject:@"TRANSPORTATION"];
    [listAssignments addObject:@"ROOMS"];
    [listAssignments addObject:@"FOOD & BEVERAGES"];

    //Set the title
    self.navigationItem.title = @"ASSIGNMENTS";

    [super viewDidLoad];
         [tvController release];

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    tableView.separatorColor=[UIColor grayColor];
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
    }


    // Configure the cell.
    cell.textLabel.textColor=[UIColor blackColor];
    cell.textLabel.text=[listAssignments objectAtIndex:indexPath.row];
    cell.textLabel.font=[UIFont systemFontOfSize:16];   
    return cell;
}

1 Ответ

0 голосов
/ 07 апреля 2011

UITabBarController должен быть вашим родителем. Попробуйте добавить ваш navigationController в ваше подпредставление tvControllers на вкладке, которую вы хотите показать. tvController.views = [NSArray arrayWithObjects:navigationController, someOtherController, nil];

Чтобы показать tableView, вы добавляете tableView в представление вашего navigationController.

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