1

次のリンクからコードを見てきました。

プロトタイプ セルが空白で表示されるのはなぜですか?

カスタム テーブル ビュー プロトタイプを使用するためのwww.techtopia.comのチュートリアルからも同様です 。

しかし、まだルート ビューが空白のままです。

XML パーサー デリゲートからのデータの受信をログに記録する方法を設定しました。データが入ってくることはわかっていますが、何らかの理由で、デフォルト スタイル (字幕など) のいずれかを使用しない限り、ログに記録できません。自分で作成したカスタム プロトタイプを使用します。

ここに私のサンプルコードがあります:

カスタム UITableViewCell クラス (TickerListViewCell.h) の場合:

#import "TickerListViewCell.h"

@implementation TickerListViewCell

@synthesize ticker = _ticker;
@synthesize companyName = _companyName;
@synthesize price = _price;

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];

// Configure the view for the selected state
}

@end

(TickerListViewCell.m)

#import <UIKit/UIKit.h>

@interface TickerListViewCell : UITableViewCell

@property (nonatomic, strong) IBOutlet UILabel *ticker;
@property (nonatomic, strong) IBOutlet UILabel *companyName;
@property (nonatomic, strong) IBOutlet UILabel *price;


@end

(TickerListViewController.m) ...

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CustomStockCell";

TickerListViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
    cell = [[TickerListViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"CustomStockCell"];

cell.selectionStyle = UITableViewCellSelectionStyleNone;

// Configure the cell...

self.currentStock = [self.mystocks objectAtIndex:[indexPath row]];

cell.ticker.text = self.currentStock.symbol;
cell.companyName.text = self.currentStock.companyName;
cell.price.text = [self.currentStock.askRealtime stringValue];

NSLog(@"Configured cell for stock: %@",[(Stock *)[self.mystocks objectAtIndex:[indexPath row]] symbol]);
return cell;
}

...

「cellForRowAtIndexPath」の呼び出し内で問題が発生していると思います。プロトタイプを汎用サブタイトルに変更すると機能しますが、カスタム プロトタイプでは失敗するためです。また、プロトタイプ セルのクラスがカスタム クラスにマップされていることも確認しました。

いくつかのチュートリアルが示すように、「if (cell == nil)」ブロックを取り出してみましたが、問題は解決しませんでした。コードはコンパイル前にエラーを表示しませんでしたが、そのブロックなしで iOS 6 シミュレーターで実行しようとするとエラーが生成されました。

どんな助けでも大歓迎です。私は今、機知に富んでいます。

4

0 に答える 0