cocoa-touch - iOS:按钮的非方形点击区域

标签 cocoa-touch ios button uikit

我需要制作一些相互重叠的三角形按钮。

虽然 UIButtons 可以采用透明图像作为背景,而 UIControls 可以有自定义 View ,但它们的点击区域总是方形的。如何为我的按钮创建一个三角形的点击区域?

我来自 FLash 背景,所以我通常会为我的 View 创建一个 hitarea,但我不相信我可以在 Cocoa 中做到这一点。

有什么建议吗?

最佳答案

您可以通过继承 UIButton 并提供您自己的子类来实现:

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
    // return YES if point is inside the receiver’s bounds; otherwise, NO.
}

Apple's UIView Documentation提供详细信息,例如确认 point 已经在接收器的坐标系中。

关于cocoa-touch - iOS:按钮的非方形点击区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5649097/

相关文章:

iphone - viewDidLoad 被调用,viewWillAppear 没有被调用, View 没有出现在屏幕上

objective-c - 检测 UIScrollview 滚动超过底部

ios - 如何更改 UICollectionViewCell 初始布局位置?

ios - 无法安装 pod( fatal error : unable to access 'https://github.com/CocoaPods/Specs.git/' )

javascript - 使用jQuery和JavaScript在按钮上添加开关行为

java - 如何确保一个按钮只被点击了 "n"次?!机器人工作室

iphone - 如果您有 IBOutlet,但没有属性,那么它是否保留?

ios - 如何使用现有的导航 Controller 从 swiftui 导航到 viewcontroller

ios - NetworkInterface.GetAllNetworkInterfaces() 返回 Xamarin.iOS 中 OperationalStatus 为 'Unknown' 的接口(interface)

java - android按钮不断生成字符串