0

IBOutlets を UIView に追加しようと長い間試みてきました。うーん、無理そうです。「RecessCell」というクラスを作成しました。ファイルの所有者のクラスは「RecessCell」で、ビュー オブジェクトのクラスは RecessCell です。「 betweenPeriods 」というアウトレットを作成しましたが、すべてが機能しているようです。次に、UITableViewCell 内の UIScrollView でカスタム ビューを表示しようとしました。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    RecessCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Recess"];
    if(cell == nil) cell = (RecessCell *)[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Recess"];

    UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 1, 320, 50)];
    scrollView.showsHorizontalScrollIndicator = NO;
    scrollView.bounces = NO;
    scrollView.pagingEnabled = YES;

    scrollView.contentSize = CGSizeMake(640, 50);
    [scrollView addSubview:[[[NSBundle mainBundle] loadNibNamed:@"RecessCell" owner:self options:nil] objectAtIndex:0]];
    [cell addSubview:scrollView];
    return (UITableViewCell *)cell;
}

もちろん、うまくいきませんでした。xib をロードするたびに、迷惑な実行時エラーが発生するため、何度も何度も自分を殺したくなります。

「[ setValue:forUndefinedKey:]: このクラスは、キー betweenPeriods のキー値コーディングに準拠していません。」SetupRecess は UIViewController クラスです。SetupRecess は betweenPeriods のアウトレットを持つべきではありません - RecessCell はすべきです。

そういうわけで、loadNib メソッドの所有者を cell に変更しようとしました。さて、何を推測しますか?うまくいきませんでした。

「[ setValue:forUndefinedKey:]: このクラスは、キー betweenPeriods のキー値コーディングに準拠していません。」

ご覧のとおり、私は完全にイライラしています。何が問題なのか本当にわかりませんし、明らかにそれを修正する方法もわかりません。

助けてください、ありがとう。

4

1 に答える 1