0

我的应用程序从根控制器开始,称为我创建TaskController : UINavigationController 的类的根视图控制器(它已添加为视图);当我启动应用程序时,我只看到TaskRootController 的标题和它的背景颜色。但我没有看到表格视图。如果我的应用程序以I see table view 开头。UINavigationControllerTaskRootController : UIViewController<UITableViewDelegate>UITableViewTaskRootControllerrootViewController

在可能的情况下如何查看表格视图?

编辑

 @implementation TaskRootController

@synthesize taskRootView; //table view

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    NSLog(@"SIZE x:%f,y:%f ; %f:%f", self.view.bounds.origin.x, self.view.bounds.origin.y, self.view.bounds.size.width, self.view.bounds.size.height);
    self.view.backgroundColor = [UIColor grayColor];
    self.title = @"Root";
    self.taskRootView = [[UITableView alloc] initWithFrame: self.view.bounds style:UITableViewStylePlain];
    [self.view addSubview:self.taskRootView];
    self.taskRootView.delegate = self;
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    CGFloat result = 20.0f;
    if([tableView isEqual:self.taskRootView])
    {
        result = 40.0f;
    }
    return result;
}

@end
4

2 回答 2

0

@iPatel - 我认为这些方法不需要显示简单的表格视图(带有灰色虚线的白色背景),因为当我在我的应用程序中将它设置为根控制器时,TaskRootController 显示一切正常(不是我的 UINavigationController 中的根)

@Manohar - 我没有触手可及的代码。但我记得它看起来像:

self.taskRoot = [[TaskController alloc] initWithNill.....] //initialization of controller
self.window.rootViewController = self.taskRoot; 
[self.window makeKeyAndVisible];
于 2013-03-20T13:27:53.303 回答
0

添加UITableView

将委托和数据源放在TaskRootController.h文件中。

@interface TaskRootController : UIViewController <UITableViewDataSource, UITableViewDelegate>

并将此代码放入TaskRootController.m文件中

self.tblView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height) style:UITableViewStyleGrouped];
    self.tblView.delegate = self;
    self.tblView.dataSource = self;
    [self.view addSubview:self.tblView];

并添加相关的委托和数据源方法UITabelView

编辑:

检查您的以下方法..是否正确添加?

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    // Return the number of sections.
    return 1; // put number for section.
}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    // Return the number of rows in the section.
    return 6; // put number as you want row in section.
}
于 2013-03-20T05:03:58.903 回答