我有一个提交按钮,我最初设置为隐藏。当我尝试调整它的框架时,我似乎无法移动它? (我做出这个假设的原因是因为我的键盘覆盖了屏幕的下半部分,我尝试在键盘启动时自动调整按钮)
所以我的hacky修复是让这个代码在键盘监听器中运行:
if (self.submitButton.isHidden) {
self.submitButton.hidden = NO;
self.submitButton.frame = CGRectSetY(self.submitButton.frame, CGRectGetHeight(self.view.frame) - BUTTON_FULL_HEIGHT);
self.submitButton.hidden = YES;
} else {
self.submitButton.frame = CGRectSetY(self.submitButton.frame, CGRectGetHeight(self.view.frame) - BUTTON_FULL_HEIGHT);
}
这是正确的吗?
答案 0 :(得分:1)
您应该注册接收UIKeyboardWillShowNotification
次通知。这些通知将使用密钥userInfo
在UIKeyboardFrameEndUserInfoKey
上包含键盘框架。在这里,您可以移动submitButton
以避开键盘。
答案 1 :(得分:0)
我发现我使用的按钮不是UIButton *而且该类是覆盖隐藏的设置(并且意外破坏)的其他内容
但由于我不知道如何正确地结束这个问题,我只想对其他答案赞不绝口