Оригинальный вопрос
У меня есть класс с именем RootViewController, и мой .h файл имеет код ниже
#import "SEViewController.h"
@interface RootViewController : SEViewController{
}
@end
и мой SEViewController выглядит как
@interface SEViewController : UIViewController
{
}
@end
Как я могу объявить RootViewController как UITableViewController, а также как SEViewController одновременно?
Отредактированный вопрос
Теперь у меня есть код ниже, но я получаю предупреждения, и табличное представление не появляется.
RootViewController.m:
#import <UIKit/UIKit.h>
#import "ApplicationCell.h"
#import "SEViewController.h"
@interface RootViewController : SEViewController <UITableViewDataSource, UITableViewDelegate>
{
UITableView *tableView;
ApplicationCell *tmpCell;
NSArray *data;
}
@property (copy) NSArray *data;
@property(nonatomic,retain)UITableView *tableView;
@end
RootViewController.m:
#import "RootViewController.h"
#import "SubviewApplicationCell.h"
#define DARK_BACKGROUND [UIColor viewFlipsideBackgroundColor]
#define LIGHT_BACKGROUND [UIColor clearColor];
@implementation RootViewController
@synthesize data;
@synthesize tableView = _tableView;
#pragma mark -
#pragma mark View controller methods
- (void)viewDidLoad
{
NSString *dataPath = [[NSBundle mainBundle] pathForResource:@"rules" ofType:@"plist"];
self.data = [NSArray arrayWithContentsOfFile:dataPath];
self.navigationItem.title = @"rules";
self.navigationController.navigationBar.tintColor = [UIColor blackColor];
self.tableView = [[UITableView alloc]init];
self.tableView.rowHeight = 73.0;
self.tableView.backgroundColor = DARK_BACKGROUND;
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
[super viewDidLoad];
}
- (void)viewDidUnload
{
self.data = nil;
[super viewDidLoad];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
return YES;
}
#pragma mark -
#pragma mark Table view methods
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [data count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"ApplicationCell";
ApplicationCell *cell = (ApplicationCell *)[self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[[SubviewApplicationCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier] autorelease];
}
cell.arrow = [UIImage imageNamed:@"circle"];
cell.name = [data objectAtIndex:indexPath.row];
return cell;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
cell.backgroundColor = LIGHT_BACKGROUND;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// [self.navigationController pushViewController:nil animated:YES];
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
}
#pragma mark -
#pragma mark Memory management
- (void)dealloc
{
[data release];
[super dealloc];
}
@end