gpt4 book ai didi

iphone - UIButton仅在小范围内响应

转载 作者:行者123 更新时间:2023-12-03 21:23:11 27 4
gpt4 key购买 nike

我正在尝试将 UIButton 添加到 UIView,但在让它响应触摸时遇到一些问题。

我有一个方法,在为它提供标签后返回 UIButtons:

- (UIButton*)niceSizeButtonWithTag:(int)tag {

UIButton * aButton = [UIButton buttonWithType:UIButtonTypeCustom];
[aButton setTag:tag];
[aButton addTarget:self action:@selector(buttonWasTapped:) forControlEvents:UIControlEventTouchUpInside];

CGRect newFrame = aButton.frame;
newFrame.size.width = 44;
newFrame.size.height = 44;
[aButton setFrame:newFrame];

return aButton;
}

如您所见,我正在创建一个新按钮并增加其大小。我通过以下方式使用它:

UIButton * anotherButton = [self niceSizeButtonWithTag:1];
[anotherButton setImage:[UIImage imageNamed:@"image" withExtension:@"png"] forState:UIControlStateNormal];
[anotherButton setCenter:CGPointMake(middleOfView)];
[aView addSubview:anotherButton];

我创建了很多这样的按钮,因此就有了这个方法的原因。

按钮总是被完美地创建并添加到 subview 中。我可以看到图像并且它们处于正确的位置。问题是它们只对一小 strip 内的触摸使用react。

在此附图中,

alt text http://web1.twitpic.com/img/107755085-5bffdcb66beb6674d01bb951094b0e55.4c017948-full.png

  • 黄色显示按钮的整个框架,
  • 红色显示将对触摸做出响应的区域。
  • 灰色显示了按钮添加到的 View 的一部分。

如果有人能够解释为什么会发生这种情况,那将非常有用。

更新:

我可能应该提到我正在尝试将此按钮添加到 UIView,它是 UITableViewCell 的 subview 。

更新2:

将其直接添加到 UITableViewCell 可以正常工作,将其添加到 UITableViewCell 上的 UIView 会导致错误。

最终更新问题原来是我将包含按钮的 View 发送到 UITableViewCell 上 subview 的后面。摆脱 sendSubviewToBack: 调用修复了它。

最佳答案

添加按钮后,您是否还向此包含 View 添加了任何其他 View ?尝试将某些 View 的背景颜色设置为 blueColor、redColor 和其他颜色,以更好地查看应用程序中的 View 堆栈是什么样的。然后您应该能够轻松查看是否有某种 View 阻挡了按钮。

关于iphone - UIButton仅在小范围内响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2935492/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com