2010-07-15 4 views
0

J'ai créé un scrollview, et certains boutons sont placés sur ce scrollview. Et scrollview est transparent avec alpha = 0.5. Le fait que mes boutons soient également transparents malgré qu'ils soient en alpha de 1 et que leur opacité soit réglée sur YES. Et je khow que j'ai ajouté n'importe quelle sous-vue à n'importe quelle vue superView alors les propriétés de superview devraient être applicables à sa sous-vue. Mais je veux que tous les boutons ont été placés sur la transparence scrollview n'est pas transparent. S'il vous plaît donnez-moi quelques conseils. Pourriez-vous s'il vous plaît montrer comment la sous-vue n'hérite pas des propriétés de SupperView? Merci pour votre réponse.Problème avec les boutons non-transparents sur un scrollview transparent

[i]- (void)viewDidLoad { 
    [super viewDidLoad]; 
    DefaultLayoutData = [[Database GetDefaultLayout] retain]; 
    scrollView.contentSize = CGSizeMake(SCREEN_SIZE_WIDTH,480*4); 
    scrollView.pagingEnabled = YES; 
    scrollView.scrollEnabled = YES; 
    //scrollView. 
    scrollView.showsHorizontalScrollIndicator = YES; 
    scrollView.showsVerticalScrollIndicator = YES; 
    scrollView.scrollsToTop = YES; 
    scrollView.delegate = self; 
    [scrollView setAlpha:0.5]; 
    for (int i=0; i<[DefaultLayoutData count]; i++) { 
     NSMutableArray *BtnEntryData = [DefaultLayoutData objectAtIndex:i]; 
     MyUIButton* buttonCustom = [MyUIButton buttonWithType:UIButtonTypeCustom]; 

     buttonCustom.frame = CGRectMake([[BtnEntryData objectAtIndex:2] intValue],  [[BtnEntryData objectAtIndex:3] intValue], [[BtnEntryData objectAtIndex:5] intValue],  [[BtnEntryData objectAtIndex:4] intValue]); 
     [buttonCustom setImage:[UIImage imageNamed:[BtnEntryData objectAtIndex:1] ] forState:UIControlStateNormal]; 
     [buttonCustom setImage:[UIImage imageNamed:[[BtnEntryData objectAtIndex:1] stringByAppendingString:@"1"]] forState:UIControlStateHighlighted]; 
     [buttonCustom setAlpha:1.0]; 
     buttonCustom.alpha = 1.0; 
     [buttonCustom setOpaque:YES]; 
     [buttonCustom setBackgroundColor:[UIColor redColor]]; 
     [buttonCustom setClearsContextBeforeDrawing:TRUE]; 

     [scrollView addSubview:buttonCustom]; 
    [scrollView setBackgroundColor:[UIColor redColor]]; 
    buttonCustom.scrollView = scrollView; 
    ButtonArray = [buttonCustom retain]; 
    } 
} 

Répondre

0

Avez-vous vraiment besoin que votre vue défilante soit semi-transparente? Peut-être juste définir la couleur d'arrière-plan appropriée pour cela ferait? quelque chose comme:

[scrollView setBackgroundColor:[UIColor colorWithWhite:1.0f alpha:0.5f]]; 
+0

il y a une vue derrière scrollview et il contient l'image d'arrière-plan, mes clients veulent le bouton sont placés sur un srollview transparent et ils veulent l'arrière-plan de la vue ci-dessous est visible. ---- UIView (il contient l'image de fond) ----------- UIScrollview ---------- (transparent avec alpha == 0.5) ------ ------------- UIButton (alpha === 1, l'arrière-plan de la vue est visible.) merci pour votre réponse. – becktoan

+0

puis la définition de la couleur de fond transparente pour scrollview doit faire ce que vous voulez – Vladimir

Questions connexes