0

だから、私はhttp://www.raywenderlich.com/5191/beginning-storyboards-in-ios-5-part-2でこの素晴らしいチュートリアルに従ってiOSプログラミングを始めます。

そして、テーブルにカスタムメイドのヘッダーを作成することにしました。いつものように、stackoverflowで多くの情報を見つけたので、UITableViewDelegateにメソッドviewForHeaderInSectionを実装する必要があります。

したがって、ストーリーボードを使用しているので、UITableViewの独自のクラスを作成し、それをストーリーボードのテーブルに使用すると思いました。

また、テーブルの「IDインスペクター」の「カスタムクラス」の下にある「クラス」として「MyTableView」を選択しました。

UITableViewのサブクラス(MyTableView.h)は次のようになります。

#import <UIKit/Uikit.h>

@interface MyTableView : UITableView <UITableViewDelegate>

@end

MyTableView.mは次のようになります。

#import "MyTableView.h"

- (id)initWithFrame:(CGRect)frame
{
   self = [super initWithFrame:frame];
   if (self) {
         self.delegate = self;
   }
   return self;
}

// and then viewForHeaderInSection and heightForHeaderInSection is implemented below...

@end
4

1 に答える 1

0

UITableView ではなく、UITableViewController をサブクラス化する必要があります。プロジェクトに新しいファイルを追加するとき (Cocoa touch -> Objective-c クラスを選択)、「UITableViewController」のサブクラスを選択する必要があります。

.h ファイルは次のようになります。

@interface MyTableViewController : UITableViewController
@end

実装する必要がある.mファイルでviewForHeaderInsectionheightForHeaderInSection ストーリーボードに移動し、オブジェクトライブラリから「UITableViewController」をドラッグします。クラスを MyTableViewController に設定します。

于 2012-04-21T22:24:22.813 に答える