I don't understand the following step:
Code:
controller.showData = [[NSMutableArray alloc] initWithArray:arryData];
controller.showData = [arryData objectAtIndex:indexPath.row];
First you set showData to a new array with the content of arryData, then you pick out one element of the array with index "indexPath.row" and assign it to showData.
In my opinion you just have to delete the second line, like this:
Code:
controller.showData = [[NSMutableArray alloc] initWithArray:arryData];