ниже - это метод вызова, который не изменился ...
-(IBAction)postComment:(id)sender
{
[UserManager instance]authenticateUserAndProceed:self withSelector:@selector(showCommentView)];
}
-(void)showCommentView
{
TTPostController *postController = [[TTPostController alloc] init];
// self must implement the TTPostControllerDelegate protocol
postController.delegate = self;
self.popupViewController = postController;
// assuming self to be the current UIViewController
postController.superController = self;
postController.textView.text=@"temporary text";
[postController showInView:self.view animated:YES];
[postController release];
}
измененный метод
-(void)authenticateUserAndProceed:(id)parent withSelector:(SEL)selector
{
theParentViewController = parent;
self.theFunctionToCall = selector;
if(userid == nil)
{
GetUserInfoViewController *guivc = [[GetUserInfoViewController alloc] init];
[parent presentModalViewController:guivc animated:YES];
guivc.delegate = self;
[guivc release];
}
else {
//////////////////// below line was replaced///////////
// 2. [theParentViewController performSelector:selector];
// with below code
UIAlertView *alert =[[UIAlertView alloc]initWith Title........
[alert show];
}
}
РЕЗЮМЕ ЗАДАЧИ: каккак только пользователь зарегистрировался, он не смог подключиться к Kyboard для TTPostController
РЕЗЮМЕ ИЗМЕНЕНИЯ: как только пользователь зарегистрирован, вызов [theParentViewController executeSelector: selector];не отправляется напрямую, но вызов переходит к пользователю alertview, который вызывает его.
РЕЗЮМЕ EFETCS: пользователь увидит предупреждение типа «Вы успешно зарегистрированы».нажав ОК, на котором он будет отправлен в TTPostController.(на этот раз появляется клавиатура)
Я сохранил строку # 2 в методе AlertViewDelegate.Я был поражен, увидев, что это работает, просто не вызывая строку 2.
это сработало для меня.Я приветствую любую новую и лучшую идею для реализации того же