The easiest way to communicate among ui elements is to publish an event. So in this case what you want is to capture the touch event or checkbox change event, then publish an event that your button is selected. In the other cells, listen for the event and when another checkbox is selected, the cell sets it's checkbox to deselected.
In the selecting cell:
NSDictionary *userInfo = [NSDictionary dictionaryWithObject:checkbox forKey:@"selectedCheckbox"];
[[NSNotificationCenter defaultCenter] postNotificationName:@"checkboxSelected" object:nil userInfo: userInfo];
In the other cells:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(clearSelection) name:@"checkboxSelected:" object:userInfo];
... look in the
-(void) checkboxSelected: (NSNotification *) note {
NSDictionary * userInfo = note.userInfo;
checkbox = (UnMessage *)[userInfo objectForKey:@"selectedCheckbox"];
if(checkbox == myCheckbox) return; // ignore
// deselect my checkbox...
and on dealloc on the cell:
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"checkboxSelected" object:nil];