我有一个带开关的屏幕。如果选择是,则显示一些元素,如果选择否,则隐藏表单上的元素,并向上移动提交按钮,以便在某些元素曾经存在的地方没有空白。
这是代码:
- (IBAction)privacy:(id)sender
{
[self.view endEditing:YES];
if (self.privacySwitch.on)
{
nameField.hidden = NO;
emailField.hidden = NO;
nameLabel.hidden = NO;
emailLabel.hidden = NO;
CGPoint pt = buttonProperty.center;
pt.y += 135;
buttonProperty.center = pt;
}
else
{
nameField.hidden = YES;
emailField.hidden = YES;
nameLabel.hidden = YES;
emailLabel.hidden = YES;
CGPoint pt = buttonProperty.center;
pt.y -= 135;
buttonProperty.center = pt;
}
}
这一切都有效。我遇到的问题是,如果用户输入表单,进入下一个屏幕,然后按下后退按钮,所有元素都像以前一样出现,但是尽管其他元素仍然隐藏,但按钮仍然是原来的位置它看起来很奇怪。这是屏幕截图:
有人知道如何解决这个问题吗?谢谢!