Articoli con Tag ‘iTunes’

iPhone: eliminare l’effetto ombra durante lo scroll in un UIWebView

In questo ultimo periodo ho lavorato su tre applicazioni per Apple iPhone, praticamente in contemporanea. Due sono state già approvate da Apple e si trovano su App Store: TheFirst e iMakeLove.

TheFirst iMakeLove

In entrambe le applicazioni ho adottato l’uso di un oggetto UIWebView per visualizzare le istruzioni.
L’oggetto UIWebView si è ilevato davvero comodo in questo caso. Mi ha permesso di visualizzare in modo rapido e gradevole una testo, corredandolo in caso di immagini e qualsiasi altra cosa sia visualizzabile su una pagina Web (Flash escluso su iPhone).

TheFirst

L’oggetto UIWebView è davvero versatile e necessita di pochissime impostazioni per essere utilizzato. Unico difetto riscontrato è la presenza di una misteriosa ombra che appare quando si effettua uno scroll fuori dall’area del controllo, sia in basso che in alto:

UIWebView Shadow

Dopo varie ricerche ho capito che questo comportamento dipende dalle SDK, in particolare dagli ultimi aggiornamenti. Inoltre Apple non ha rilasciato nessuna dichiarazione ufficiale su come rimuoverlo, al contrario ha bollato come codice non permesso una serie di hack che fanno uso di funzioni riservate o non documentante. Alla fine avevo lasciato perdere, sia per questioni di tempo, sia perchè le soluzioni sembravano tutte fuori dagli schemi Apple.
Fortunatamente mi è arrivata la soluzione, spero abbastanza regolare, che sembra proprio risolvere il problema (grazie ad Adolfo):

1
2
3
4
5
6
// webView è il controllo UIWebView
id scroller = [webView.subviews objectAtIndex:0];

for (UIView *subView in [scroller subviews])
    if ([[[subView class] description] isEqualToString:@"UIImageView"])
        subView.hidden = YES;

Come sottolineato da Adolfo questo è comunque un hack che potrebbe smettere di funzionare con futuri rilasci delle SDK.

Continua...

The First: disponibile su iTunes

Sei giorni ed AppStore ha approvato la (mia) prima applicazione per Apple iPhone!

Continua...


Stop SOPA