我已將子類別UIView
基本上包含UIPickerView
和UIToolbar
。分類UIView在動畫幀後顯示不正確
當用戶在選取器中選擇一個特定的行時,我會在拾取器上添加一個UIImageView
。但是,當我將UIView
動畫到屏幕上時,此圖像不可見。如果我沒有動畫UIView
那麼它會正確顯示。
我顯示UIImageView
像這樣(在UIView
):
- (void)showMailSetupPopover {
if (self.popoverMailSetupImageView == nil) {
UIImageView *popoverMailSetupImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"popover-mail-setup-addreminder"]];
popoverMailSetupImageView.alpha = 0.0;
popoverMailSetupImageView.frame = CGRectMake(8, self.frame.origin.y + 65, popoverMailSetupImageView.bounds.size.width, popoverMailSetupImageView.bounds.size.height);
self.popoverMailSetupImageView = popoverMailSetupImageView;
}
[self addSubview:self.popoverMailSetupImageView];
[UIView animateWithDuration:0.5 animations:^{
self.popoverMailSetupImageView.alpha = 1.0;
} completion:^(BOOL finished) {}];
}
這是我如何添加UIView
到self.view
:
RMMessageTypePickerView *messageTypePickerView = [[RMMessageTypePickerView alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height, 320, 260) reminderMessageType:RMReminderMessageTypeText delegate:self];
self.messageTypePickerView = messageTypePickerView;
[self.view addSubview:self.messageTypePickerView];
[UIView animateWithDuration:0.2 animations:^{
self.messageTypePickerView.frame = messageTypePickerViewTargetFrame;
self.addReminderTableView.frame = addReminderTableViewTargetFrame;
} completion:^(BOOL finished) {
if (firstShow) {
[self processSelectedMessageTypeRow:RMReminderMessageTypeText];
}
}];
[self.view addSubview:self.messageTypePickerView]; - >將其放入動畫完成塊。 – Petar 2013-03-07 10:38:58
@ pe60t0我認爲你完全錯了。如果他將在完成塊中添加視圖,那麼視圖的動畫移動將不可能 – 2013-03-07 11:21:09
@Peter Warbo,你可以在你調用的地方添加代碼 - (void)showMailSetupPopover – 2013-03-07 11:25:20