2014-09-19 39 views
0

我有一個叫progressView認爲我做了可拖動這樣的:將視作品,在iOS8上它重置以左上角每次

-(void)viewDidLoad 

... 
    self.panGesture = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePanGesture:)]; 
    [self.progressView addGestureRecognizer:self.panGesture]; 
... 


-(void) displayPollingFor:(double)numOfSeconds 
{ 
    self.progressView.hidden = NO; 
    self.pollTimeLeftLabel.textColor = [UIColor whiteColor]; 

    [self.view insertSubview:self.progressView aboveSubview:self.moviePlayer.view]; 
    self.progressView.center = CGPointMake(self.view.frame.size.width - self.progressView.frame.size.width/2 - 10, self.moviePlayer.view.frame.size.height/2); 
    self.progressView.accessibilityElementsHidden = YES; 
    self.progressView.translatesAutoresizingMaskIntoConstraints = false; 

    [UIView animateWithDuration:4 animations:^{ 
     self.progressView.alpha = .8; 
     self.progressView.hidden = NO; 
    }]; 

    self.progressView.thicknessRatio = 0.2; 
    self.progressView.textColor = [UIColor blueColor]; 

    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(touchPollBtn:)]; 
    // tap.cancelsTouchesInView = NO; 
    [self.progressView addGestureRecognizer:tap]; 


    self.pollEndsLabel.hidden = NO; 
    self.minsSecsLabel.hidden = NO; 

    timer = [NSTimer scheduledTimerWithTimeInterval:1.0 
              target:self 
              selector:@selector(updateLabel:) 
              userInfo:nil 
              repeats:YES ]; 

    pollTimeLeft = pollTimeTotal = numOfSeconds; 
    [self updateLabel:nil]; 
} 

-(void)handlePanGesture:(UIGestureRecognizer*)gesture 
{ 
    self.progressView.center = [gesture locationInView:self.view]; 

    if (self.progressView.center.y > 100) { 
     self.progressView.center = CGPointMake([gesture locationInView:self.view].x, 100); 
    } 
    else if (self.progressView.center.y < 30) { 
     self.progressView.center = CGPointMake([gesture locationInView:self.view].x, 40); 
    } 
} 

這工作正常,在iOS7,我可以將它拖到它會留在我離開它的地方。在iOS8中,視圖總是返回到視圖的左上角。我怎樣才能解決這個問題?

由於

回答

0

self.progressView.translatesAutoresizingMaskIntoConstraints = TRUE;

修復此問題的iOS8。我不知道iOS7和iOS8之間有什麼變化,所以我很樂意讓人解釋一下。