2013-01-02 56 views
0

該應用程序具有帶有表格視圖和UISearchbar的UIView。 Searchbar委託方法位於UIView的視圖控制器中。一切都似乎正確地連接起來。UISearchBar無法在IOS 6 Popover中工作

此搜索欄在iOS 5中正常工作,但不在iOS6中正常工作。觸摸時,搜索欄會顯示鍵盤,但在鍵盤上鍵入沒有任何影響; textDidChange委託方法永遠不會被調用。

只有在iPad上運行時纔會發生這種情況。 iPad與iPhone之間的視圖差異在於帶有UITableView和UISearchbar的UIView在iPad上的彈出窗口中運行。在iPhone上,它作爲單獨的視圖運行。在這兩種情況下,一旦打開視圖,UINavigationController管理視圖。導航控制器上下的所有導航都可以在兩個設備上正常工作;唯一的區別是UISearchBar不能在popover中運行。

很明顯,iOS 5和iOS 6之間有些變化,但我一直無法弄清楚在iOS 6彈出窗口中如何使搜索欄工作。

任何幫助將不勝感激!

+0

你可能會在這裏找到一些線索(這取決於你的問題的確切性質):http://stackoverflow.com/questions/12447875/keyboard-and-cursor-show-but-i-cant-type-in​​side -uitextfields-and-uitextviews/12504575#12504575 –

+0

謝謝。我曾看過這個,但我的觀點不是應用程序的主窗口,所以我看不出如何將其應用於我的情況。最初,我認爲這是一個代表問題,但我意識到這是UISearchbar和鍵盤之間的聯繫。沒有什麼會從鍵盤到搜索欄。 – johnz

+1

我剛剛發現的另一點信息:搜索欄在iPhone上運行應用程序時運行,但不在iPad上運行。不同的是,在iPad上,這個特定的視圖在popover中變得流行起來,而在iPad上則不然。在這兩個視圖都由UINavigationController控制。所以這必須與在popover中運行導航控制器有關,但我想不出爲什麼會有所作爲。 – johnz

回答

0

rokjarc是對的。我有同樣的問題。在我的app'SearchBar顯示控制器中,SearchBar不響應鍵盤輸入ios6。但在ios5模擬器,ios6模擬器,iPhone 3GS,iPhone 4中沒問題。 在MainWindow.xib中, 1.單擊「對象」框中的「窗口」圖標。 2.顯示屬性檢查器 3.擴展窗口屬性。 4.檢查「啓動時可見」和「啓動時全屏」 5.清理構建並運行。 6.很好。好?

0

我剛剛得到了我原來的問題的答案。我發現在UITextFields和UITextViews中發生了同樣的事情。我把整件事發給Apple技術支持。

原來你包括這行代碼:

[self.window makeKeyAndVisible]; 

在應用程序的委託的didFinishLaunchingWithOptions:方法。當我添加這條線時,問題就消失了。

希望這會有所幫助。

相關問題