Domanda

Ho il seguente codice in un NSCollectionView sottoclasse:

-(void)drawRect:(NSRect)rect {  
    if(!NSEqualRects(highlightBox,NSZeroRect)) {        
        [[NSColor colorWithCalibratedRed:1.0f green:0.2f blue:0.2f alpha:1.0f] set];    
        NSRectFillUsingOperation(NSInsetRect(tempHighlightBox, -1.0, -1.0),NSCompositeSourceOver);
        [[NSColor colorWithCalibratedRed:0.2f green:0.2f blue:1.0f alpha:0.5f] set];
        NSRectFillUsingOperation(tempHighlightBox,NSCompositeSourceOver);
    }
}

Il NSRect viene disegnato ok, ma è dietro una delle subviews NSCollectionViews E vorrei che fosse sopra le righe. È possibile?

È stato utile?

Soluzione

Una vista viene disegnato prima e poi tutte le sue subviews sono disegnate su di esso. Non v'è alcun modo per disegnare su una visualizzazione secondaria nel metodo drawRect:. Per fare questo si avrebbe anche per ignorare il metodo drawRect: della visualizzazione secondaria.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top