1

空の を作成しましたxibUITableViewCell(UserCell)をオーバーライドするクラスを作成しました。

いくつかの文字列を表示用にフォーマットし、2 つのラベルを で接続するカスタム ロジックを挿入しIBます。

私のView ControllerはUITableView. ビューコントローラーをデータソースとして設定しました。これが、カスタム セルを設定する方法です。

(した: http://www.highoncoding.com/Videos/823_Creating_a_Custom_UITableViewCell.aspx )

-(UserCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UserCell* cell = [tableView dequeueReusableCellWithIdentifier:@"Users Table"];

    if (!cell) {
        NSArray* topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"UserCell" owner:nil options:nil];
        for (id currentObject in topLevelObjects) {
            if ([currentObject isKindOfClass:[UserCell class]]) {
                cell = (UserCell*) currentObject;
                break;
            }
        }
    }

    [cell setUserNameText:[[[_userDataManager getUsers] objectAtIndex:indexPath.row] name ]];
    [cell setNumberLabelText:indexPath.row];
    return cell;
}

なぜかスクロールできません。テーブルビューに印刷していますviewDidLoad:scrollEnabled「1」です。

カスタムを入れるまではこんなトラブルはありませんでしたUITableViewCell。:(

アドバイスありがとうございます!:D

編集: カスタム セル コード。

#import "UserCell.h"

@implementation UserCell

@synthesize textLabel, numberLabel;

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        // Initialization code
    }
    return self;
}

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

    // Configure the view for the selected state
}

-(void) setNumberLabelText:(NSInteger)text {
    self.numberLabel.text = [[NSString alloc] initWithFormat:@"# %d", text];
}

-(void) setUserNameText:(NSString*)text {
    self.userNameLabel.text = text;
}

@end
4

1 に答える 1

0

回答としてこの質問を閉じます(私は時々ダープです)

トラックパッドを使って iOS のことをあまりやったことがありません。シミュレーターで2本指のスクロールが「スクロール」することを期待していたようです。そうではありません!

この問題を抱えている他の人に注意してください。

于 2013-04-08T05:14:02.413 に答える