0

Xcode (iOS6 をターゲット) で StoryBoard を使用して、UITableView プロトタイプ Cell を iPad アプリケーションの UIView に追加しました。

私が抱えている問題は、ラベルを参照しようとすると、viewController でラベルが認識されないことです。

私の実装では、次のものがあります。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"dashboardMessage";

    UITableViewCell *cell = [_tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }


    int row = [indexPath row];


       cell.messageSender.text = [_matches valueForKey:@"from"];

}

最後の行がエラーを引き起こしています: プロパティ 'messageSender' が UITableViewCell 型のオブジェクトで見つかりません

セルのヘッダー ファイルには次のものがあります。

@interface DashboardMessageCell : UITableViewCell

@property (strong, nonatomic) IBOutlet UILabel *messageSender;
@property (strong, nonatomic) IBOutlet UILabel *messageDescr;

ヘッダー ファイルが viewController にインポートされます。

何が問題を引き起こしているのかわからなくなりました。どんな助けでも大歓迎です。

ありがとう。

4

1 に答える 1

1

セルのタイプは DashboardMessageCell である必要があり、コードは次のようになります。

(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"dashboardMessage";
DashboardMessageCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
   if (cell == nil) {
      cell = [[DashboardMessageCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; 
   }
   int row = [indexPath row];
   cell.messageSender.text = [_matches valueForKey:@"from"];
}

私はこのコードを試していません

于 2012-11-20T16:56:41.867 に答える