我已經建造這樣的方法:如何直接調用tableView方法?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//some table related stuff
}
但是我不能叫這個,所以我基本上覆制和粘貼的整體功能,並更名爲:
- (void)jumpCountry: (NSIndexPath *)indexPath {
//some table related stuff
}
,並通過調用此方法:
[self jumpCountry:countryIndex];
但是我的類看起來難看(而不是首選),因爲它已經拿到了SAM兩種方法。那麼,我怎樣才能直接調用初始方法(我知道它被分配給一個調用該方法的按鈕)。我正在使用iOS6.1。基本上,我想直接調用的原因是我有另一個線程偵聽通知(來自位置服務),一旦收到通知,應該更改表視圖。通知本身已經在搜索NSIndexPath,所以不會有任何問題。
你爲什麼不能叫'的tableView:didSelectRowAtIndexPath方法:'? – Wain
編譯器提供了一個錯誤「使用未聲明的標識符didSelectRowAtIndexPath'」 –
我不明白你的問題,你能說清楚嗎?爲什麼不能從'didSelectRowAtIndexPath'調用'[self jumpCountry:countryIndex];',而不是重複代碼? –