2009-08-12 4 views

Répondre

2

Après quelques googleing rapide j'ai trouvé deux liens qui vous aideront à:

Google Groups discussion on this question
Blog post on how to do this.

+0

hmm. Im un peu sceptique cela va fonctionner. mais merci, mal voir si je trouve le succès. –

+0

Ok. Apparemment, un UIScrollView transparent est certainement. Il semble que le contenu de mon lecteur de défilement est ce qui le rend NON translucide. Comment puis-je rendre le contenu (un UIView) transparent? –

+2

Ok. il s'agit simplement de définir le contenu self.backgroundColor de UIView = [UIColor clearColor]. Ce fut un long moment de corriger un bug très simple. –

9

Pour ceux qui ne pas avoir de réponse claire à ce sujet. Il va:

mettre un portefeuillet imageview à la vue principale et le définir à l'image de fond souhaitée ou définir sa couleur de fond comme motif, puis à l'intérieur de cette vue mettre le scrollview et définir son arrière-plan à transparent.

Ensuite, vous obtenez l'effet désiré avec Safari sur iPad par exemple sur le défilement de la page.

Ceci est un code pour Monotouch, mais est facile à comprendre.

this.View.BackgroundColor = UIColor.FromPatternImage (UIImage.FromFile ("Images/About-bg0.jpg")); 
scrollView = new UIScrollView (new RectangleF (0, 0, 320, 450)); 
     scrollView.ContentSize = new SizeF (320, 640 + 508 + 1000); 
     //scrollView.BackgroundColor = UIColor.FromPatternImage (UIImage.FromFile ("Images/About-bg0.jpg")); 
     scrollView.BackgroundColor = UIColor.Clear; 
+1

self.oneColumnScrollView.backgroundColor = [UIColor clearColor]; Fonctionne très bien pour moi! Merci Pavel. –

17

Ceci est en fait très facile, un UIScrollView hérite d'un UIView si vous avez juste besoin de régler la backgroundColor propriété:

aScrollView.backgroundColor = [UIColor clearColor]; 

La ligne ci-dessus code définit l'arrière-plan transparent afin que vous puissiez voir à travers tout ce que vous voulez mettre derrière. Notez également que vous devez faire la même chose avec les vues secondaires que vous avez placées dans la vue défilante. Ces vues doivent également avoir une couleur d'arrière-plan transparente.

Si vous voulez une image statique, utilisez un motif comme dans la ligne de code ci-dessous. Cela peut être une image de texture plus petite que l'écran qui sera répété/en mosaïque, ou une image en plein écran afin que vous ne voyiez aucune répétition.

aScrollView.backgroundColor = [UIColor colorWithPatternImage:anImage]; 
+0

Compte tenu de la simplicité de cette technique, je pense qu'il doit s'agir d'iOS 4+ ou même d'iOS 5+. Quelqu'un peut-il confirmer? –

+0

cela ne fonctionne pas –

+3

Les vues que vous placez dans la vue de défilement doivent également avoir une couleur d'arrière-plan claire. – jhabbott

2

Avez-vous essayé,

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"content.png"]]; 
1

Celui-ci a fonctionné pour moi ...

self.scrollView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"tileableImage.png"]]; 
Questions connexes