TableView で以下のコードを使用してカスタム セルを作成しようとしています。私は Objective C と iPhone の開発に 100% 慣れていないので、経験者とはほど遠い状態です。
次のコード: cell.label1 = [[UILabel alloc] initWithFrame:labelFrame]; それは言います(タイプ「UITableViewCell」のオブジェクトにプロパティ「label1」が見つかりません:
私は何を逃したのですか?関連するすべてのコードは以下にあります。助けてくれてありがとう / 初心者
BookmarksViewController.h
@interface BookmarksViewController : UITableViewController <UIAlertViewDelegate>
{
NSMutableArray *items;
UILabel *label1;
UILabel *label2;
UILabel *label3;
}
@property (nonatomic, retain) NSMutableArray *items;
@property (nonatomic, retain) UILabel *label1;
@property (nonatomic, retain) UILabel *label2;
@property (nonatomic, retain) UILabel *label3;
- (NSMutableArray*) getStoredItems;
- (void) clearItems;
- (void) removeItemWithId:(int)itemId;
@end
BookmarksViewController.m
#import "BookmarksViewController.h"
@interface BookmarksViewController ()
@end
@implementation BookmarksViewController
@synthesize items;
@synthesize label1 = _label1;
@synthesize label2 = _label2;
@synthesize label3 = _label3;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"BookmarkCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
CGRect labelFrame = cell.bounds;
labelFrame.size.height= labelFrame.size.height * 0.5;
cell.label1 = [[UILabel alloc] initWithFrame:labelFrame];
}
Bookmark *item = [self.items objectAtIndex:indexPath.row];
NSArray *chunks = [item.name componentsSeparatedByString: @","];
NSString *name;
NSString *book;
NSString *chapter;
if ([chunks count] > 0)
{
name = [chunks objectAtIndex:0];
if ([chunks count] > 1)
{
book = [chunks objectAtIndex:1];
if ([chunks count] > 2)
{
chapter = [chunks objectAtIndex:2];
}
}
}
cell.label1.text = name;
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 70; // height of tableView Cell
}