Tha*_*nks 27 iphone cocoa-touch uikit uiimageview
我认为是聪明的,只需在具有确切帧大小的UIImageView上放置一个透明的UIButton,这样我就可以轻松地将它连接到我喜欢的任何事件,例如TouchUpInside,并使其在调用时调用视图控制器的动作方法.用户触摸它.好吧,直到alpha低于0.1f才有效.如果我做0.01f,它将无法正常工作.所以为了让它工作,当在屏幕上看很长时间时,你会看到0.1f的alpha闪耀.这真是令人作呕;)
似乎iPhone操作系统很聪明,并且如果它在视觉上不存在,则不会捕获按钮上的事件.知道如何解决这个问题吗?
当然,我可以创建UIImageView的子类并实现touchesBegan:...等,但它感觉不是很优雅.我的意思是......当我想要在网络上超链接图像时,我绝不想为该图像创建我自己的HTML元素,只需在点击时将其连接到网址即可.这对我来说没有多大意义.
Jas*_*son 44
您应该能够在Interface Builder中将按钮的"类型"设置为"自定义",并且它不会在UIImageView上显示任何文本或图形元素.这样,您无需调整alpha.如果视图是根据代码构建的,请使用:
button = [UIButton buttonWithType:UIButtonTypeCustom];
Run Code Online (Sandbox Code Playgroud)
小智 5
除了 UIButtonTypeCustom 之外,我还将按钮文本颜色设置为以下内容:
[button setTitleColor:[UIColor clearColor] forState:UIControlStateNormal];
[button setTitleShadowColor:[UIColor clearColor] forState:UIControlStateNormal];
[button setTitleColor:[UIColor clearColor] forState:UIControlStateHighlighted];
[button setTitleShadowColor:[UIColor clearColor] forState:UIControlStateHighlighted];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21581 次 |
| 最近记录: |