Question

I'm going from storyboard to UISplitViewController in a xib. I want to logout of my storyboard view, which will bring me to the UISplitViewController. In the storyboard controller, I have a UITextField. I set it so that it doesn't dismiss itself after I press enter. However, it now stays open even when I switch to the splitviewcontroller, which I obviously don't want because i want to logout.

Logout Button

  UIBarButtonItem *logoutButton = [[UIBarButtonItem alloc] initWithTitle:@"Log Out" style:UIBarButtonItemStylePlain target:self action:@selector(confirmLogout)];

Method to bring up UISplitViewCOntroller

- (void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex
{

    if (alertView.tag==TAG_DEV){


        if (buttonIndex) {


            [[[UIApplication sharedApplication] delegate] performSelector:@selector(gotoSplitViewController)];


        } else {



            [self.navigationController popViewControllerAnimated:YES];

        }}

  }

method gotoSplitViewController in the delegate:

-(void)gotoSplitViewController{




    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    ListViewController *listVC = [[ListViewController alloc] initWithStyle:UITableViewStylePlain];
    UINavigationController *listNC = [[UINavigationController alloc] initWithRootViewController:listVC];

    AssignedViewController *assignedVC = [[AssignedViewController alloc] initWithNibName:@"AssignedViewController" bundle:nil];
    UINavigationController *assignedNC = [[UINavigationController alloc] initWithRootViewController:assignedVC];

    //assign the views to the new nav view controllers
    splitViewController = [[UISplitViewController alloc] init];
    splitViewController.delegate = assignedVC;
    splitViewController.viewControllers = @[listNC, assignedNC];

    listVC.detailViewController = assignedVC;


    [[self window] setRootViewController:splitViewController];

    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];



}

my UITextField

self.textBox = [[UITextField alloc] initWithFrame: CGRectMake(10, 660, 750, 90)];
    self.textBox.backgroundColor = [UIColor colorWithRed:(209/255.0) green:(236/255.0) blue:(232/255.0) alpha:1];
    self.textBox.returnKeyType = UIReturnKeySend;
    self.textBox.delegate = self;
    [self.view addSubview:self.textBox];

I've tried the resignFirstResponder if various places, including adding

- (void)viewWillDisappear:(BOOL)animated
{
    [self.textBox resignFirstResponder];

}

However, none of them work. How do I get the keyboard to disappear after the views change?

Was it helpful?

Solution

I set

self.chatBox.delegate=nil;

in my methods to switch views

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top