Leak memory when add subview in cocos2dx

I’m developing a game project, it need add a UIView. In this view, it’s has some button allow you touch on it.
I did and it worked fine. But i want to solve leak memory at the below code:

void iOSBridge::addNativeRecordView_iOS(void(callback), vector<vectorstd::string > rows) {
>
this->callback = callback;
>
id sth = delegate];
>
if {
>
SpeakHereViewController
speakViewController = [[SpeakHereViewController alloc] initWithNibName:@“SpeakHereViewController” bundle:nil withManyRows:rows withCallBack:this];
>
speakViewController.view.frame = CGRectMake(585, 275, 156, 494);
AppController *controller = (AppController *) sth;
[controller.viewController.view addSubview:speakViewController.view];
>
}
}

I want to release “speakViewController” variable, but when i only set [speakViewController release], it will be crashed when i touch any buttons.

Please help me about this. thank so much !