2016-07-01 3 views

Antwort

-1
You can try the below code: 
{ 
    UIColor *transBgColor = [UIColor colorWithWhite:1.0 alpha:0.0]; 
    UIColor *black = [UIColor blackColor]; 
    CAGradientLayer *maskLayer = [CAGradientLayer layer]; 
    maskLayer.opacity = 0.8; 
    maskLayer.colors = [NSArray arrayWithObjects:(id)black.CGColor, 
    (id)transBgColor.CGColor, (id)transBgColor.CGColor, (id)black.CGColor, nil]; 

    // Hoizontal - commenting these two lines will make the gradient veritcal 
    maskLayer.startPoint = CGPointMake(0.0, 0.5); 
    maskLayer.endPoint = CGPointMake(1.0, 0.5); 

    NSNumber *gradTopStart = [NSNumber numberWithFloat:0.0]; 
    NSNumber *gradTopEnd = [NSNumber numberWithFloat:0.4]; 
    NSNumber *gradBottomStart = [NSNumber numberWithFloat:0.6]; 
    NSNumber *gradBottomEnd = [NSNumber numberWithFloat:1.0]; 
    maskLayer.locations = @[gradTopStart, gradTopEnd, gradBottomStart, gradBottomEnd]; 

    maskLayer.bounds = container.bounds; 
    maskLayer.anchorPoint = CGPointZero; 
    [container.layer addSublayer:maskLayer]; 
} 
0

ich bin nicht sicher, aber versuchen, diesen Code

CAGradientLayer *btnGradient = [CAGradientLayer layer]; 
btnGradient.frame = btn.bounds; 
btnGradient.colors = [NSArray arrayWithObjects: 
           (id)[[UIColor colorWithRed:102.0f/255.0f green:102.0f/255.0f blue:102.0f/255.0f alpha:1.0f] CGColor], 
           (id)[[UIColor colorWithRed:51.0f/255.0f green:51.0f/255.0f blue:51.0f/255.0f alpha:1.0f] CGColor], 
          nil]; 
[yourbtn.layer insertSublayer:btnGradient atIndex:0]; 
+0

seine Farbe in vertikaler Richtung kommt nicht in horizontalen – Monika

+0

seine Steigung Position gesetzt, Startpunkt und Endpunkt als: => gradient.locations = [0, 0.5, 0.5, 1.0] /* mach es horizontal */ gradient.startPoint = CGPointMake (0, 0.5) gradient.endPoint = CGPointMake (1, 0.5) – Abhi

+0

Jetzt kommt es in horizontaler Richtung aber es kommt zeigt eine unerwünschte blaue Farbschicht am unteren Rand der Schaltfläche . – Monika

Verwandte Themen