Benutzerdefinierte UITableViewCell, die .xib nicht verwendet (höchstwahrscheinlich aufgrund eines Fehlers in der init-Methode)

Ich habe die UITableViewCell in eine Unterklasse eingeteilt, um sie anzupassen, aber ich glaube, ich vermisse etwas, weil: 1) es nicht funktioniert und 2) es gibt ein paar Dinge, bei denen ich verwirrt bin. Neben dem Anpassen des Aussehens der .xib-Datei habe ich auch die Hintergrundansicht geändert, und dieser Teil funktioniert einwandfrei. Der Teil, den ich am wenigsten verstehe / über den ich am meisten verwirrt bin, ist die init-Methode, also habe ich das hier gepostet. Wenn sich herausstellt, dass dies korrekt ist, teilen Sie mir dies bitte mit, damit ich mehr Code dazu posten kannkann die Ursache sein.

Dies ist die Init-Methode, die ich angepasst habe. Ich bin etwas verwirrt über die "Stil" -Idee und denke, ich gebe nur eine normale UITableViewCell mit einer anderen backgroundView zurück. Ich meine, es gibt nichts, was auf die .xib verweist oder irgendetwas anderes tut, als die .backgroundView von sich aus zu ändern:

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier wait: (float) wait fadeOut: (float) fadeOut fadeIn: (float) fadeIn playFor: (float) playFor
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        CueLoadingView* lview = [[CueLoadingView alloc] initWithFrame:CGRectMake(0, 0, 320, 53)];
        self.backgroundView = lview;

        [self setWait:wait]; // in turn edits the lview through the backgrounView pointer
        [self setFadeOut:fadeOut];
        [self setFadeIn:fadeIn];
        [self setPlayFor:playFor];
    }
    return self;
}

Abgesehen von der .xib-Datei und mehreren Setter und Gettern ist dies der einzige Teil meines Codes, der sich auf das Abrufen einer Zelle bezieht.

Zusätzliche Information:

1) Dies ist meine .xib, die mit der Klasse verknüpft ist.

2) Dies ist der Code, der UITableView (den Delegierten / Ansichtscontroller) aufruft / erstellt:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *simpleTableIdentifier = @"CueTableCell";

    CueTableCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

    if (cell == nil) {
        cell = [[CueTableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier wait:5.0 fadeOut:1.0 fadeIn:1.0 playFor:10.0];
        [cell updateBarAt:15];
    }

    return cell;
}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage