Tôi có một ViewController với một loạt các UIImageViews mà tôi cần phải gửi đến mặt trước và tạo ảnh động đến trung tâm của khung nhìn.iOS bringSubviewToFront chặn hoạt ảnh UIView
Tôi đã cố gắng gọi bringSubviewToFront trước khi truyền hoạt ảnh UIView và những gì dường như đang xảy ra là chế độ xem được gửi lên đầu ngăn xếp, nhưng hoạt ảnh không xảy ra (mặc dù nhật ký xử lý hoàn thành hiển thị như thể hoạt ảnh DID xảy ra).
Lần thứ hai tôi nhấn nút kích hoạt các hình ảnh động (xem xét rằng thời gian này xem đã ở chỉ số hàng đầu, các hình ảnh động diễn ra như mong muốn)
Heres mã của tôi:
- (void)beginAnimationWithSelectedCountry:(UIView *)countryView
{
if (!countryView) return;
[self.view bringSubviewToFront:countryView];
[UIView animateWithDuration:0.6f delay:0 options:UIViewAnimationOptionCurveEaseOut animations:^{
countryView.center = CGPointMake(self.view.center.x, self.view.center.y);
} completion:^(BOOL finished) {
NSLog(@"Animation complete");
}];
}
Bất kỳ suy nghĩ nào? Tôi đã ở đây trong nhiều giờ>. <
Cảm ơn
EDIT: Nếu tôi nhận xét ra bringSubviewToFront mã thực hiện một cách hoàn hảo với hình ảnh động (trừ các quan điểm đang được một số quan điểm khác) vì vậy tôi Preety chắc chắn vấn đề là với các dòng:
[self.view bringSubviewToFront:countryView];
Heres một ảnh chụp màn hình của những gì tôi hiện có mà có thể làm sáng tỏ thêm về vấn đề này: http://d.pr/i/PKoa
Tôi sẽ bắt đầu với câu lệnh if-return đó và xem liệu phương pháp của bạn có còn được gọi là lần đầu tiên xung quanh với NSLog hay không. – CodaFi
Đã được kiểm tra, vì tôi đã đăng nhật ký "Hoạt ảnh hoàn tất" đang được gọi cả hai lần. Cảm ơn mặc dù –
làm điều này - đặt các hình ảnh động trong một phương pháp thứ hai được gọi là animateCountry đặt mã hoạt hình trong nó - trong phương thức bắt đầu gọi bringSubViewToFront - sau đó gọi [self performSelector: animateCountry ... nó sẽ hoạt động. –