2012-09-19 43 views
18

鍵入文本的UITextField或UITextView的,當我嘗試編輯(鍵入一些文本)UITextFieldUITextView或其他任何「文本能夠」 UIControl光標閃爍剛但是沒有字符鍵入除BACKSPACE(只有當我有一些初始文本時),RETURN和切換字符類型。這涉及整個應用程序的所有控制。不能在我的應用程序之一,在iOS6的

摘要:

  1. 它只能從iOS的6.0發生
  2. 所有委託方法被解僱(未在iOS 5.x的,既不4.x的模擬或真實設備發生)(shouldBeginEditing:didBeginEditing: ) shouldChangeCharactersInRange:
  3. isFirstResponder標誌的行爲設置正確(shouldBeginEditing:logs NO,while didBeginEditing:logs YES correctly)。它也使用第一個響應者是已編輯的日誌進行測試。
  4. 它在之後自行修復,任何UIAlertView都呈現給用戶並被解僱。這個警報是否顯示在同一個屏幕上(UIViewController視圖)或任何其他的都沒關係。

我不知道如何甚至接近或調試。

我應該在哪裏尋找提示?任何追蹤響應鏈相關問題的專家?

如何追蹤UIAlertView對該問題的影響?

+0

發佈這個問題啓發我以某種方式,我找到了解決方案。這是相當微不足道的。我應該等待並給你們一個獲得積分的機會,否則我會馬上發表一個答案? – Lukasz

+0

這裏是另一種解決方案: http://stackoverflow.com/questions/12447875/keyboard-and-cursor-show-but-i-cant-type-in​​side-uitextfields-and-uitextviews/12559046#12559046 – Danil

+0

請發佈您的解決方案,我已經嘗試了一切,它仍然無法正常工作。 Makekey andvisible不是這種情況發生的唯一原因。 – Ben

回答

19

根據您的實現它或者UIWindow類,你忘了應用程序委託的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法或在主界面XIB文件對應的Visible at Launch旗內調用的方法makeKeyAndVisible

乾杯... :)

+1

是的,就是這樣。我還添加了window.rootViewController = ...以防萬一。看起來iOS 6比以前的版本更依賴於這些設置。 – Lukasz

+1

或者,也許恰恰相反,以前的iOS版本正在爲你打... – Ariel

+0

是的,我最近也設置了window.rootViewController,以修復啓動時出現的警告日誌消息。我剛纔知道,我之前做過的方式(將我的rootViewController的視圖添加爲窗口的子視圖)沒有UITextField缺陷。但是,我不建議回到這種添加rootViewController的舊方法。使用window.rootViewController並按照此處所述修復問題。 – Tafkadasoh

0

在我的情況我會在後臺活動期間彈出在主窗口中的活動的指標。在這種情況下,活動指示器視圖有自己的窗口,它被設置爲UIWindowLevelAlert。我在這個窗口中無意中調用了makeKeyAndVisible。稍後我會打電話給resignKeyWindow。這曾經在iOS 4和5上工作,但不再在iOS 6中工作。我發現這並不是技術上必要的,因爲簡單地使用window.hidden = Y/N也可以。

2

在我的情況下,主窗口中有一個'可見的啓動',它沒有被選中,僅適用於iOS5,需要檢查它以使其在iOS6上工作。

0

在我的情況,我把我的UITextField從ViewDidLoad到ViewDidAppear的變成firstFirstResponder,這解決了我的問題。

相關問題