簡體   English   中英

在UIPopoverController中呈現時,為什么UITableViewController self.tableView屬性為Nil?

[英]Why Is UITableViewController self.tableView Property Is Nil When Presented in UIPopoverController?

我有一個基於nib的UITableViewController,在iPad上運行時顯示在UIPopoverController中,在iPhone上運行時顯示為“本機”。

在iPad上運行時,控制器的self.tableView屬性在其整個生命周期內為零。 作為正常操作的一部分傳遞給tableView的委托消息可以正常工作,並具有對表視圖的引用。

在iPhone上,該屬性已設置,並且引用如您所願有效。

有什么可能會使self.tableView屬性為nil的特定內容? 我已經仔細檢查了Interface Builder中的連接-Nib僅包含一個表視圖和相關的UISearchBar東西。 筆尖中的表視圖被設置為視圖控制器的視圖。

兩台設備上均在4.2.1上。 敲我的頭,找不到我的錯誤。

我發現了問題,這當然是編程錯誤。

在這種情況下,實現文件頂部的錯誤@synthesize tableView會生成沖突的getter和setter。

致歉,並感謝那些關注此事的人。

嘗試一下...在返回tableView對象的方法之一中執行“ assert(self.view == tableView);” 看看會發生什么。 如果斷言沒有觸發,並且我懷疑斷言不會在iPhone或iPad上觸發,則只需將self.view轉換為UITableView並執行您需要做的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM