1

カスタム セルの .h ファイルの 3 つのラベル アウトレットにリンクされているカスタム セル プロトタイプ クラス (UITableViewCell のサブクラス) に 3 つのラベルがあるプロジェクトがあります。

次に、メインのビューコントローラー クラス (プロトタイプ セルを格納し、UITableViewController のサブクラス) で、これらのラベルと対話するデリゲート メソッドは次のようになります。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"ArticleCell";
    ArticleCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    int row = indexPath.row;

    cell.articleTitle.text = self.articleTitles[row];
    cell.articleURL.text = self.articleURLs[row];
    cell.articlePreview.text = self.articleURLs[row];

    return cell;
}

それでも、次の 3 つのエラーが発生します。

Connection "articleURL" cannot have a prototype object as its destination.
Connection "articlePreview" cannot have a prototype object as its destination.
Connection "articleTitle" cannot have a prototype object as its destination.

私は正確に何を間違っていますか?私は困惑している。

4

1 に答える 1

2

プロジェクトでラベル アウトレットを間違って接続している可能性があります。articleURLラベル、articlePreviewおよびarticleTitle が で定義されていると仮定しUITableViewCellます。customTableViewCellにない対応するクラスのコンセントに接続する必要がありUIViewControllerます。で参照self.articleTitlesしているようにcellForRowAtIndexPath、クラスではなく現在のクラスのアウトレットとしてそれらを接続していることを示唆していますcustomTableViewCell。UITableView のデリゲートが実装されている現在のクラスのプロパティとして customTableCell を定義することをお勧めします。

詳細については、TableView プログラミングを参照してください。

于 2013-03-18T22:32:20.423 に答える