-1

カスタムセルを使用し、ストーリーボードを使用してセルにラベルを付けています。タグを使用してそのラベルを参照する

 UILabel *name=(UILabel *)[cell.contentView viewWithTag:1];

しかし、それはクラッシュを引き起こし、クラッシュログは次のようなものです:

* キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了します。理由: '-[UILabel contentOffset]: 認識されないセレクターがインスタンス 0xa0814b0 に送信されました'

テーブルビューセルの私のコードは次のとおりです。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

       static NSString *CellIdentifier = @"cellid";
        UITableViewCell *cell = [self.citytable dequeueReusableCellWithIdentifier:CellIdentifier];
        @try{


            cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] ;

            cell.selectionStyle=UITableViewCellSelectionStyleNone;



        UILabel *name=(UILabel *)[cell.contentView viewWithTag:1];
return cell;
}

ストーリーボードを使用してラベルを取得しない場合、正常に動作します。 [UILabel contentOffset]: ?

4

1 に答える 1

1

nameのUILabelオブジェクトを取得していないため、アプリがクラッシュします。タグ 1 のビューがUITableViewになる可能性があります。contentOffsetは UITableView のメソッドです。したがって、 UITableViewUILabelに型キャストしていないことを確認してください。1001、1002 などの別のタグでも試すことができます。

于 2013-10-11T06:52:37.053 に答える