这里是吐槽时间,换掉了mac默认的输入法,出发点只有一个,就是切换中英文输入的时候相当不爽。也许是习惯了其他各大输入法的一键切换,而又没有找到自带输入法可设置的地方。
Segue
以前我们使用navigation controller 去push view controller, storyboards 里面相应的概念就是segue.还有一种切换的方式是modal view controller 从地下临时的弹出。类似于Jquery ui 中的模态对话框。prepareForSegue:sender:是一个重要的方法,你可以在这里传递数据到下一个view.
在一个StoryBoards上放两个ViewController
通过Ctrl 和拉伸或者右键拉伸的方式,连接两个view controller.
identifier
我们给这个segue 一个唯一识别名: pushLogin. 为什么我们需要这个识别名,因为我们打算在跳转之前作一些validation,比如说确认下客户的输入是否正确,否则我们不允许用户跳转到下一步。shouldPerformSegueWithIdentifi er:sender: method of UIViewController 就是我们执行validation 的方法。
因此我们上面的发送账户验证请求,不再需要绑定在按钮按下的事件中。
Synchronous http request
上面我们使用的是异步http request的方式,其实我们想要同步的分析请求结果,再确定是否跳转,因此这里需要阻塞。
NSURLResponse response = nil; NSError error = nil; NSData *data = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error];
当然,验证不通过,我们需要一个alert
- (void) showAccountIsNotValid{ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"该用户不存在!" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"OK", nil]; [alert show];}