我有一个自定义类,它为我的按钮添加边框,并具有在左上角创建“X”按钮的功能。
第一个问题:为了让 X 按钮出现在图像按钮的边界之外,我必须关闭图像按钮上的 clipToBounds。但这具有允许图像穿过圆角的负面影响。有没有办法只剪辑图像而不是 X 按钮?
第二个问题:边框显示在 X 按钮上。(起初我认为这是一个 alpha 问题,但事实并非如此。)我希望第一个问题的解决方案能够解决第二个问题,这就是我在这里解决这两个问题的原因。
我有一个自定义类,它为我的按钮添加边框,并具有在左上角创建“X”按钮的功能。
第一个问题:为了让 X 按钮出现在图像按钮的边界之外,我必须关闭图像按钮上的 clipToBounds。但这具有允许图像穿过圆角的负面影响。有没有办法只剪辑图像而不是 X 按钮?
第二个问题:边框显示在 X 按钮上。(起初我认为这是一个 alpha 问题,但事实并非如此。)我希望第一个问题的解决方案能够解决第二个问题,这就是我在这里解决这两个问题的原因。
我建议创建一个新视图并将 x 按钮和图像视图添加为子视图。此视图不会裁剪到边界。然后在图像视图上设置边框、角半径和clipToBounds。
UIView
我最好的建议是用您将添加的自定义按钮替换您的按钮UITapGestureRecognizer
。然后,您将能够很快解决您的问题。
在您的ButtonView
(您的 UIView 子类)中添加一个UIImageView
, 与您的图像并为 UIImageView 本身添加一个边框。然后使用圆角layer.cornerRadius
并剪辑到边界。
现在添加一个单独UIImageView
的ButtonView
并将其放在前面。根据需要添加“x”图像和圆角。
最后将背景图像设置ButtonView
为.clear
最重要的。