2012-02-05 73 views
2

我隐藏UITextField下的UIButton。通常情况下,UIButton的响应只是找到。但是,当我将它设置为隐藏(或者当我将alpha设置为0)时,它停止工作。隐藏时,UIButton不起作用

对于上下文,我在UITextField下包含一个隐藏按钮,因为编辑文本字段的可点击区域很小 - 我想让用户能够点击uitextfield附近的任何地方以便文本字段成为第一响应者。因此,该按钮的代码是:

- (IBAction)enterTextField:(id)sender { 
    [nameTextField becomeFirstResponder]; 
    NSLog(@"Pressed"); 
} 

但是,隐藏该按钮时不会调用此代码。否则,它会被调用。

+6

如果您隐藏某些内容,它将不会响应交互......因为它隐藏了*。 – 2012-02-05 04:30:52

+2

当命中测试时,被隐藏或具有小于0.01的'alpha'的视图将被忽略。这在'hitTest:forEvent:'下的* [UIView类参考](https://developer.apple.com/library/ios/#documentation/uikit/reference/uiview_class/uiview/uiview.html)*中有记录。方法。 – 2012-02-05 04:51:57

+0

@ P.Wright:既然你的问题已经明显得到解答,你应该选择Matt的答案并关闭这个话题。 – 2012-02-05 10:09:23

回答

6

使其与UIButtonTypeCustom的自定义按钮或将背景设置为clearColor。

+0

谢谢,这个伎俩。我必须做的唯一其他更改是防止按钮在点击时突出显示: invisibleButton.adjustsImageWhenHighlighted = NO; – 2012-02-05 05:15:44

+1

@P,你应该接受马特的答案,因为他解决了你的问题。 – 2012-02-05 13:07:55