我的应用程序中有2个表,它们在不同的视图中都有不同的类。这两个类的代码几乎相同,但只有一个有效。
不起作用的是我的URLViewController。
URLViewController.h
#import <UIKit/UIKit.h>
@interface URLViewController : UIViewController <UITableViewDataSource>
{
NSArray * tableData;
NSArray * tableSubtitles;
}
@property (nonatomic, retain) NSArray * tableData;
@property (nonatomic, retain) NSArray * tableSubtitles;
@end
URLViewController.m
#import "URLViewController.h"
@interface URLViewController ()
@end
@implementation URLViewController
@synthesize tableData, tableSubtitles;
- (void)viewDidLoad
{
[super viewDidLoad];
[self.view setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"bg.jpg"]]];
tableData = [[NSArray alloc] initWithObjects:@"Location 1", @"Location 2", @"Location 3", @"Location 4", @"Location 5", @"Location 6", @"Location 7", @"Location 8", @"Location 9", @"Location 10", @"Location 11", @"Location 12", @"Location 13", @"Location 14", nil];
tableSubtitles = [[NSArray alloc] initWithObjects:@"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", @"http://www.google.fi/", nil];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [tableData count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell * cell = nil;
cell = [tableView dequeueReusableCellWithIdentifier:@"Listaus"];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"Listaus"];
}
//cell.textLabel.textColor=[UIColor whiteColor];
//cell.detailTextLabel.textColor=[UIColor whiteColor];
cell.textLabel.text = [tableData objectAtIndex:indexPath.row];
cell.detailTextLabel.text = [tableSubtitles objectAtIndex:indexPath.row];
return cell;
}
@end
我现在所能得到的只是空白页。
为什么其他类的代码几乎完全相同,但这不是吗?有效的是我最初创建的那个。
答案 0 :(得分:0)
在viewDidLoad
方法的末尾重新加载表格。 tableData
方法在viewDidLoad
方法之前的表格中不包含任何内容。因此,使用reloadData
方法重新加载表。
另外,在viewDidLoad
方法中,将self
声明为表的委托和数据源。
答案 1 :(得分:0)
检查你的.h文件中的声明如下。
@interface DisplayViewController : UIViewController<UITableViewDataSource,UITableViewDelegate>