UITextField不占用整个屏幕宽度

时间:2013-04-24 08:53:49

标签: iphone ios objective-c xcode storyboard

我正在使用UITextField和UIButton,如您在此屏幕截图中所示:

enter image description here

有时需要禁用“测试”按钮,因此我使用以下代码禁用它:

    [_hButton setEnabled:NO];
    [_hButton setHidden: true]; 

但问题是UITextField没有像你在这里看到的那样从屏幕上获取整个宽度:

enter image description here

这是我的故事板中UITextField的设置:

enter image description here

知道如何解决这个问题吗?

3 个答案:

答案 0 :(得分:4)

执行此操作[_hButton setEnabled:NO]; [_hButton setHidden: true];时,您必须修改textField宽度。

您的代码应该是..

CGRect oldFrame = yourTextField.frame;
CGRect frameNew = CGRectMake(oldFrame.origin.x,oldFrame.origin.y,oldFrame.size.width + _hbutton.frame.size.width,oldFrame.size.height);
yourTexField.frame = frameNew;

如果您想要这样做,只需进行反向计算。

答案 1 :(得分:0)

虽然按钮是隐藏的,但它仍然存在。您应该完全从视图中删除它以获得所需的效果[_hButton removeFromSuperview];

答案 2 :(得分:0)

UITextView没有调整大小,因为按钮仍在那里,它只是不可见。隐藏按钮后,手动调整UItextView框架。