背景颜色持续变化 - iOS

时间:2016-07-15 12:29:11

标签: ios objective-c uiview colors background-color

UIView背景色连续变化,如Instagram登录屏幕,如图所示,内存中没有加载。

enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

要更改背景颜色,请执行以下操作:

    self.view.backgroundColor=yourColor;

要连续更改,你可以使用timer.IF你有一个背景的数组颜色,将颜色存储在一个数组中。

   NSArray *colorArray=@[colo1,color2....colorn];

您还可以生成random颜色并将其传递给视图背景。在这种情况下,您可以这样做(在这种情况下,您不必将颜色存储在数组中)< / p>

      self.view.backgroundColor=metodThatReturnsRandomColor.

或者,声明计时器每1.0秒调用一次changeColor方法。

  @property (nonatomic, retain) NSTimer * timerIvar;


 self.timerIvar  = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(changeColor) userInfo:nil repeats:YES];

,方法是:

-(void)changeColor{
         if(x<colorArray.count){
        self.view.backgroundColor=colorArray[x];
        }else{
          x=0;
       }
        x++;
  }

同样的逻辑适用于images / gradient colors

并记住viewWillDisappear

- (void)viewWillDisappear:(BOOL)animated
{
  ...
  [self.timerIvar invalidate];
 self.timerIvar = nil;
}