UIViewController で UITableView の Delegate を呼び出すには?
ストーリーボードを使わずに下記のようなコードを使用し、 UIViewController 内部で UITableView の Delegate を呼び出したいです。
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UITableView *tableView = [[UITableView alloc] init];
tableView.frame = CGRectMake(0, 0, 300, 200);
tableView.tag = 1;
tableView.delegate = self;
[self.view addSubview:tableView];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - TableView
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
NSLog(@"1");
return 1;
}
-(NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section{
NSLog(@"2");
return 5;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell= [[UITableViewCell alloc] init];
NSLog(@"3");
return cell;
}
@end
ヘッダファイルは以下のようになっています。
@interface ViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>
デリゲートを設定しているはずなのにデリゲートメソッドが呼び出されないのはなぜなのでしょうか?
iOSのUIViewControllerにtableViewを追加する場合
似たような投稿がありましたがストーリボードを使用せずにコードのみで実装したいです。