Frage

Ich versuche zu geben tableviewcell's anders backgroundColors colorwithPatternImage und es ist nicht wie erwartet funktioniert.Die Dokumentation sagt nichts darüber aus, nur in der Lage, verwenden Sie ein pattern gleichzeitig.

Sagen, ich habe 3 Zeilen und ich den hintergrund so:

Cell1.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"red.png"]];

Cell2.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"green.png"]];

Cell3.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"blue.png"]];

Alle 3 Zeilen werden rot.Es ist, als wenn es ist einige Globale Farbe, die zurückgegeben wird.

colorWithPatternImage zurück kCGColorSpaceModelPattern 1 für jeden Anruf, egal was Bild übergeben wird.Wenn es wahr war, dass Sie nur noch 1 global pattern gleichzeitig, dann sollte die Farbe sein, der Letzte Satz, mit anderen Worten blau.

Das macht keinen Sinn.Hat jemand eine Insider-know-how auf dem, was Apple hier macht?

BEARBEITEN Ich selbst nutze ein anderes Muster in einem völlig separaten Fenster angezeigt und es immer noch Einfluss auf die andere Sicht, die die Muster.Ich bin überzeugt, wenn die Dokumentation nicht dadurch, dass du nur einen UIColor Bild Muster zu einer Zeit.Traurig.

War es hilfreich?

Lösung

Was kann ich sehen, ist dies nicht oder nicht mehr wahr. Ich habe hier ein paar UITableViewCells, wo jeder eine andere Background hat, ohne Probleme.

Andere Tipps

Was ist Cell1?Wo (in welcher Methode) sind Sie diese Einstellung?

Ich würde sagen, Sie sollten alles tun, diese in

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

    static NSString *CellIdentifier = @"Cell";

    MyTableCell *cell = (MyTableCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {      
      // create cell
    }

    // Set up the cell...

    // set up a background color
    if (something)
        cell.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"red.png"]];
    else (another)
        cell.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"green.png"]];
    else
        cell.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"blue.png"]];
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top