UITableViewのイベントが正しく動かない
UITableView がタップされた時のイベントdidSelectRowAtIndexPath で UIAlertController 関連のイベントが正しく動作しなかった。
dispatch_after 、dispatch_async などから、別スレッドを起こして、を使うパターンをためしたけど、うまくいかない。
自分は、タイマーを使ったらうまくできた。
//TableViewがタップされた時のイベント - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ // タイマーを作成してスタート NSTimer *tm = [NSTimer scheduledTimerWithTimeInterval:0.01f target:self selector:@selector(func1:) userInfo:nil repeats:NO ]; } -(void) func1:(NSTimer*)timer{ NSIndexPath* indexpath = [self.tableView indexPathForSelectedRow]; NSString* message =[NSString stringWithFormat:@"%zd" ,indexpath.row ]; }
参考
スレッドプログライミング
https://developer.apple.com/jp/documentation/Multithreading.pdf