因为ios的autolayout固定了控件在屏幕上的位置,所以隐藏控件后,后面的控件并不会顶上空出来的位置。
思路:重新画图。
//hide button [_signupButton setHidden:YES]; //move up loginLink label CGFloat signupButton_y = _signupButton.frame.origin.y; CGFloat loginLink_x = _loginLink.frame.origin.x; CGFloat loginLink_width = _loginLink.frame.size.width; CGFloat loginLink_heitht = _loginLink.frame.size.height; _loginLink.frame = CGRectMake(loginLink_x, signupButton_y, loginLink_width, loginLink_heitht);