2016-07-10 93 views
0
[UIView animateWithDuration:0.3 delay:0.0f options:UIViewAnimationOptionCurveEaseInOut animations:^{ 
      [viewMain setFrame:CGRectMake(0, 30, 1024, 378)]; 
     } completion:^(BOOL finished){ 
      [txtViewNote becomeFirstResponder]; //Its a TextView 
     }]; 

上面的代碼大部分時間都正常工作。但有時候行iOS的TextView在UIView動畫完成塊之後得到崩潰

[txtNote becomeFirstResponder] 

導致崩潰。我有嘗試抓住。但是碰撞不會阻擋。

+0

確保您從主線程調用動畫。 – Raz

+0

我正在從主線程調用。 –

回答

0

我剛剛解決了這個問題。當我第二次來到這個視圖時,它實際上發生了。 我有2個鍵盤觀察者

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow :) name:UIKeyboardWillShowNotification object:nil];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide :) name:UIKeyboardWillHideNotification object:nil];

但是在關閉視圖時我沒有移除觀察者。這就是爲什麼當第二次來到這個視圖時,核心代碼無法處理它。不知道可可觸摸中究竟有什麼問題。但它解決了。

相關問題