1

我开发的应用程序包含 UITableView(不是 Controller),它是通过编程方式添加的。我没有使用任何 nib 文件。并发现在模拟器中工作正常,但是当我在显示的设备表上构建但没有看到任何文本时。数据源和委托已连接。

这里有一些代码

if (kPortrait) {
        optionTV = [[UITableView alloc] initWithFrame:CGRectMake(568, 75, 200, 44 * [optionArray count]) style:UITableViewStylePlain];
    } else {
        optionTV = [[UITableView alloc] initWithFrame:CGRectMake(824, 75, 200, 44 * [optionArray count]) style:UITableViewStylePlain];
    }
    [optionTV setAutoresizesSubviews:YES];
    [optionTV setAutoresizingMask:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)];
    [optionTV setDataSource:self];
    [optionTV setDelegate:self];
    optionTV.alpha = 0.0f;
    optionTV.backgroundColor = [UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:0.50];
    [self.view addSubview:optionTV];
    [UIView animateWithDuration:0.5f animations:^{
        trafficBT.transform = CGAffineTransformMakeTranslation(-200, 0);
        optionTV.alpha = 0.8;
    }];

对于委托方法:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    NSLog(@"tableView Data num row: %d", [optionArray count]);
    return [optionArray count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }
    cell.textLabel.backgroundColor = [UIColor clearColor];
    if (kIsIPhone) {
        cell.textLabel.font = [UIFont systemFontOfSize:18];
    } else {
        cell.textLabel.font = [UIFont systemFontOfSize:20];
    }

    cell.textLabel.text = [optionArray objectAtIndex:indexPath.row];
    return cell;
}
4

0 回答 0