title: iOS: setting UIView background color from outside the run loop
body: <p>I'd like for events running in a thread dedicated to audio to change the UI. Simply calling view.backgroundColor doesn't seem to have any effect. </p>
  
  <p>Here are two methods in my viewController. The first is triggered by touches. The second is called from the audio code. The first works. The second. Any idea why?</p>
  
  <pre><code>// this changes the color
  -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
      [touchInterpreter touchesMoved:touches withEvent:event];
      self.view.backgroundColor = [UIColor colorWithWhite: 0.17 + 2 *  [patch getTouchInfo]-&gt;touchSpeed alpha:1];
  
  };
  
  // this is called from the audio thread and has no effect
  -(void)bang: (float)intensity{
      self.view.backgroundColor = [UIColor colorWithWhite: intensity alpha:1];
  }
  </code></pre>
  
  <p>Any idea why? Am I just doing something stupid, or is there a trick to changing UI elements from outside the run loop?</p>