在我的應用程序,我目前的用戶與MFMessageViewController,10秒鐘後,我通過調用MFMessageComposeViewController自動解僱
[self.presentedViewController performSelector:@selector(dismissModalViewControllerAnimated:)
withObject:[NSNumber numberWithBool:YES] afterDelay:10];
自動關閉它的問題是,如果用戶使用的MFM開始(即通過輸入或點擊加號或編輯正文來添加收件人),我無法取消此呼叫。我知道我可以打電話
[NSObject cancelPreviousPerformRequestsWithTarget:self.presentedViewController
selector:@selector(dismissModalViewControllerAnimated:) object:[NSNumber
numberWithBool:YES]];
但我無法知道用戶何時開始以上述方式編輯MFM。有針對這個的解決方法嗎?
是的,但在這種情況下,如果用戶沒有注意並且沒有關閉MFM,那麼應用程序其餘部分的有效性會受到影響。我不想留下那樣的事情;當用戶開始與MFM交互時,沒有任何方法可以收到通知嗎? –
你是什麼意思「應用程序的有效性受到影響」?用戶打開mailCompose窗口的原因。讓他決定何時關閉它。在這種情況下,任何其他方式都是反直覺的,只是不正確... –
不,因爲用戶可能不希望MFM第一次出現,並且它需要幾秒鐘才能創建/消息正文被形成。除非MFM被解僱,否則應用程序的真正內容不會發生,這就是我有計時器的原因。我不希望用戶啓動應用程序,然後立即讓自己的設備進入睡眠狀態,期待應用程序正常工作,並在三個小時後回來看到MFM盯着他看,沒有記錄數據。 –