2016-08-08 92 views
0

Ich habe eine XIB-Datei, die eine uiview und 3 uibutton enthält. flush-semamed Abstand. (uiview 2px Platz uibuttun 2px Raum ...)ios gradient background nach constraint angewendet

Ich verwende Einschränkungen in xib-Dateien und sie sind automatisch richtig, wenn Gerät ipad, iphone oder Landschaft oder Porträt zum ersten Mal gestartet. Sie werden je nach Gerät größer oder kleiner. Das Problem starten, wenn ich Gradienten auf Schaltflächen anwenden.

CAGradientLayer *gradientMain = [CAGradientLayer layer]; 
gradientMain.frame = myview.frame; //myview.bounds no matter 
gradientMain.colors = [NSArray arrayWithObjects:(id)[[UIColor colorWithRed:(65/255.0) green:(64/255.0) blue:(66/255.0) alpha:1.0] CGColor], (id)[[UIColor colorWithRed:(35/255.0) green:(31/255.0) blue:(32/255.0) alpha:1.0] CGColor], nil]; 
[myview.layer insertSublayer:gradientMain atIndex:0]; 

afterthis Code, wenn ich Ausrichtung der Gerätegrenzen in xib Dateigrößen und Ansichten zu ändern sind widersprüchlich. Wie kann ich dieses Problem lösen?

Ich versuche, diese nach der Orientierung, aber die Arbeit nicht

[self.centerCollectionView reloadData]; 
+0

http://stackoverflow.com/questions/15581374/how-to-resize-a-cagradientlayer-after-rotation?answertab=votes#tab-top – kozer

Antwort

0

versuchen, dies zu Ihren View-Controller hinzuzufügen.

- (void)viewDidLayoutSubviews { 
     gradientMain.frame = myview.frame; 
    }