私は次のように構築されたメソッドを持っています:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//some table related stuff
}
ただし、これを呼び出すことはできないため、基本的に関数全体をコピーして貼り付け、名前を次のように変更しました。
- (void)jumpCountry: (NSIndexPath *)indexPath {
//some table related stuff
}
そして、次を使用してこのメソッドを呼び出します。
[self jumpCountry:countryIndex];
ただし、同じ 2 つのメソッドを持っているため、私のクラスは醜い (そして好ましくない) ように見えます。では、どうすれば初期メソッドを直接呼び出すことができますか (そのメソッドを呼び出すボタンに割り当てられていることがわかっています)。iOS6.1を使用しています。基本的に、直接呼び出したい理由は、(ロケーション サービスからの) 通知をリッスンする別のスレッドがあるためです。通知を受信したら、テーブル ビューを変更する必要があります。通知自体は既に NSIndexPath を検索しているため、問題はありません。