Creare l'ombra come strato trasparente ad una determinata dimensione, quindi creare un'immagine estensibile, in questo modo:
UIImage *shadowImage = [UIImage imageNamed:@"shadow.png"];
shadowImage = [shadowImage stretchableImageWithLeftCapWidth:floorf(shadowImage.size.width/2) topCapHeight:floorf(shadowImage.size.height/2)];
si può quindi mettere che come immagine in un'UIImageView con scala contentMode per adattarsi e funzionerà nel modo desiderato
Diciamo che la vista è chiamata "myView". È possibile aggiungere l'ombra in questo modo:
UIImageView *shadowImageView = [[UIImageView alloc] initWithImage:shadowImage];
shadowImageView.contentMode = UIViewContentModeScaleToFill;
shadowImageView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
shadowImageView.frame = myView.bounds;
[myView addSubview:shadowImageView];
[shadowImageView release]; // only needed if you aren't using ARC
È anche possibile fare la maggior parte di questo costruttore di interfaccia, se si preferisce, a patto che si crea l'immagine in sé estensibile in codice.
fonte
2012-02-09 16:16:06
mi metterà alla prova adesso. – alexmngn
Come posso fare per aggiungere questa immagine stretch sullo sfondo del mio UIView? Con il metodo 'backgroundColor' questo non funziona. – alexmngn
Hai visto la seconda parte della mia risposta sull'utilizzo di UIImageView e l'ho aggiunto come sottoview alla tua vista principale? –