I don't know why it's not working but I just do the below and it's work fine for me
@property(nonatomic, assign)id<nxtDelegate> Delegate;
synthesize the property name Delegate
@synthesize Delegate;
and during push I set the delegate
ViewControllerB *ViewControllerBObj=[[ViewControllerB alloc] init];
[ViewControllerBObj setDelegate:self];
[[self navigationController] pushViewController:ViewControllerBObj animated:YES];
In IBAction
- (IBAction)chngAction:(id)sender
{
if([[self Delegate] respondsToSelector:@selector(chngvalue:)])
[[self Delegate] chngvalue:chcek];
}