我想制作一个泛型类,当点击它时,会使元素变灰。

Facebook的应用程序是我想要实现的完美范例。点击它们的所有链接和图像都会变成灰色。

我只能猜测他们是子类UIButton

我已经将按钮的样式设置为UIButtonTypeCustom来消除圆角边框。除此之外,我不知道如何使用灰色的覆盖层,因为在文档中没有看到这样的属性。

最佳答案

这很简单:

#define TAG_GRAYVIEW 5671263 // some random number

// add the gray overlay
UIView *grayView = [[UIView alloc] initWithFrame:button.bounds];
grayView.backgroundColor = [UIColor grayColor];
grayView.tag = TAG_GRAYVIEW;

[button addSubview:grayView];

// remove the gray overlay
UIView *grayView = [button viewWithTag:TAG_GRAYVIEW];
[grayView removeFromSuperview];

10-08 01:35