Sto cercando di aggiungere un'ombra discendente alle viste che sono sovrapposte l'una sull'altra, le viste collassano consentendo di vedere il contenuto in altre viste, in questo senso voglio rimanere view.clipsToBounds
ATTIVO in modo che quando le viste collassano il loro contenuto venga ritagliato.
Questo sembra aver reso difficile per me aggiungere un'ombra esterna ai livelli poiché quando accendo anche clipsToBounds
le ombre vengono tagliate.
Ho provato a manipolare view.frame
e view.bounds
per aggiungere un'ombra esterna al fotogramma ma consentire ai bordi di essere abbastanza grandi da racchiuderlo, tuttavia non ho avuto fortuna con questo.
Ecco il codice che sto usando per aggiungere un'ombra (funziona solo con clipsToBounds
OFF come mostrato)
view.clipsToBounds = NO;
view.layer.shadowColor = [[UIColor blackColor] CGColor];
view.layer.shadowOffset = CGSizeMake(0,5);
view.layer.shadowOpacity = 0.5;
Ecco uno screenshot dell'ombra applicata allo strato grigio più chiaro in alto. Spero che questo dia un'idea di come il mio contenuto si sovrapporrà se clipsToBounds
è OFF.
Come posso aggiungere un'ombra al mio UIView
e mantenere il mio contenuto ritagliato?
Modifica: Volevo solo aggiungere che ho anche giocato con l'utilizzo di immagini di sfondo con le ombre, il che funziona bene, tuttavia mi piacerebbe comunque conoscere la migliore soluzione codificata per questo.
masksToBounds = NO;
ad aggiungerlo al mio originale - con entrambi i tentativi ho mantenutoclipsToBounds = YES;
ON - entrambi non sono riusciti a ritagliare il contenuto. ecco uno screencap di ciò che è successo con il tuo esempio> youtu.be/tdpemc_Xdps