2010年6月14日月曜日

簡単なUITableViewControllerのサブクラス

スズキです。

"Interface Builder"を使わなくなった、今日、この頃です。

最低限、下記のような感じで作っておくと、
とりあえず、表が表示されます。

--------【MyTableViewController.h】--------
#import <UIKit/UIKit.h>

// UITableViewControllerを継承
@interface MyTableViewController : UITableViewController {
}

@end
--------

--------【MyTableViewController.m】--------
#import "MyTableViewController.h"

@implementation MyTableViewController

- (id)initWithStyle:(UITableViewStyle)style {
  if ((self = [super initWithStyle:style])) {
    // テーブルのタイトル
    self.title = @"My Table View Controller";
    // テーブルの背景色
    self.view.backgroundColor = [UIColor blackColor];
  }
  return self;
}

// セクションの数
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
  return 2;
}

// 各セクションのセルの数
- (NSInteger)tableView:(UITableView *)tableView
    numberOfRowsInSection:(NSInteger)section {
  return 2;
}

// 各セクションのタイトル
- (NSString *)tableView:(UITableView *)tableView
    titleForHeaderInSection:(NSInteger)section {
  return @"My Table View Controller";
}

// セルの作成
- (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];
  }
  return cell;
}

@end
--------

あとは、どこかで、

[[MyTabViewController alloc] initWithStyle:UITableViewStylePlain]

で利用することになります。

とりあえず、テーブルを極めよう…

--------
http://www.suz-lab.com

0 コメント: