2012-12-08 47 views
0

只是一個簡單的問題(我希望!)麻煩,同時增加柱 - 可可

我有一個無效方法,其中一列添加到表。

爲什麼,如果我調用該方法以編程方式(例如:自法])我表不會更新,而是如果我把它通過IBAction爲(推從應用按鈕)它作品? 其實我從日誌中可以看到方法在兩種情況下都被調用,但只是用IBAction更新數據。

方法:

- (IBAction)void { 
    NSTableColumn *column = [[NSTableColumn alloc] initWithIdentifier:@"1"]; 
    [column setWidth:50]; 
    [tableData addTableColumn:column]; 
    [tableData reloadData]; 

    [[column headerCell] setStringValue:@"aColumn"]; 
    NSLog(@"Method called"); //The method is called in both cases 
} 

我無法找出什麼我做錯了。

(新可可編程)

非常感謝!

回答

1

你在哪裏以編程方式調用了這個函數?你可能在視圖加載到init方法之前調用它,而不是像awakeFromNib那樣的其他東西。

0

我試過你的代碼,得到不同的結果。它從代碼(和表更新)被稱爲罰款,但不是從按鈕(並試圖從按鈕調用時不運行日誌)。

問題是方法名 - 你不應該命名一個方法void。你沒有在控制檯中得到錯誤消息:「無法連接動作無效:到類AppDelegate的目標」 編譯器甚至不會允許我將該方法連接到按鈕(它看起來像我可以在IB,但是我收到了該錯誤消息,如果將該方法放在.h文件中,則它旁邊沒有顯示是否連接的圓圈)。