我試圖從WWDC 2010 vol128掌握表視圖合併和修改擴展節頭。但是,我必須錯過一個步驟或忘記了一些內容,因爲我在嘗試使用表視圖訪問我的視圖時遇到了EXC_BAD_ACCESS錯誤。我得到EXC_BAD_ACCESS試圖使用我的UITableViewController的子類
我忘了你在哪裏可以找到源代碼,但它在他們的開發者網站上。這是很多的代碼發佈。
我看到的主要區別是他們的版本將UITableViewController的子類作爲子視圖添加到它們的appdelegate即。窗口。我想將我的控制器添加到viewviewler中的scrollview。我確定有這個問題嗎?
下面的原始代碼對我來說沒有任何意義,因爲它在將它添加爲子視圖之前釋放aTableViewController,在我的版本中,我無法做到這一點。它也使得self.tableViewController = aTableViewController; tableViewController是這樣合成在頂部: @synthesize tableViewController=tableViewController_
我不知道它來自哪裏,因爲它沒有在項目中的任何其他地方引用。同樣,原始代碼在應用程序代碼中也有這樣的代碼,所以也許有些東西我不知道在那裏發生。
蘋果的代碼(它的工作原理):
TableViewController* aTableViewController = [[TableViewController alloc] initWithStyle:UITableViewStylePlain];
aTableViewController.plays = self.plays;
self.tableViewController = aTableViewController;
[aTableViewController release];
// Stamdard window display.
[self.window addSubview:aTableViewController.view];
[self.window makeKeyAndVisible];
出於測試目的,我做了一個空testTableViewController子這幾乎是空的,並試圖將其添加爲具有相同結果的子視圖。也許,我錯誤地創建了一個UITableViewController子類。對不起,因爲含糊不清,但我認爲它與上面給出的信息片斷有關。
謝謝
你提到這行代碼:'@synthesize tableViewController = tableViewController_'。你還可以粘貼屬性聲明,該聲明應該如下所示:'@property(nonatomic,retain)tableViewController;' – Steve
另外,請粘貼代碼行(以及某些上下文),以獲取錯誤。 – Steve
嗯,我完全忘了那個。謝謝。它不再崩潰。我仍然好奇爲什麼self.tableViewController = aTableViewController允許我在將它添加爲子視圖之前釋放一個TableViewController。 – Adam