UIScrollView を使用してカスタム UITableViewCell を作成しようとしています。UITableViewCell (UIScrollView のみを含む) と、セルの scrollView のコンテンツ ビューである UIView を含む .xib があります。
さて、カスタム セルを表示する UITableView のコードは次のとおりです。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self.tableView registerNib:[UINib nibWithNibName:@"RecessCell" bundle:nil] forCellReuseIdentifier:@"Recess"];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
RecessCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Recess"];
return cell;
}
RecessCell クラスのヘッダー:
#import <UIKit/UIKit.h>
@interface RecessCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;
@property (strong, nonatomic) IBOutlet UIView *contentView;
@end
scrollView は、各セル内の UIScrollView のアウトレットです。contentView は、UIScrollView のコンテンツ ビューのアウトレットです。
さて、これまでのところすべてが合法に見えますが、アプリを実行すると:
*キャッチされない例外 'NSUnknownKeyException' が原因でアプリを終了しています。理由: '[ setValue:forUndefinedKey:]: このクラスは、キー contentView のキー値コーディングに準拠していません。
私はその実行時エラーについてたくさん読んだことがありますが、私が見つけることができるのは次のとおりです:
contentView が実際にヘッダーで宣言されていることを確認する必要があります。(ご覧のとおり、そこで宣言されています)
cellForRow で UITableViewCell を RecessCell に変更する必要があります。
この問題を解決するにはどうすればよいですか? カスタム UITableViewCells を作成するのはとても難しいですか?