2012-11-21 37 views
0

我需要一个UIButton,但我不想为它的边框。UIButton删除边界覆盖触摸

不过,我还是想继续保持漂亮的渐变叠加,当有人触摸按钮

像Facebook的iPad应用程序,它们具有显示出一个灰色的框覆盖,当你触摸它们的文本链接在新闻饲料。

我在这里看到了关于使用UISegmentedControl的解决方案。不过,我不想在解决方案中使用梯度/ Quartz框架。

有没有人遇到过这个问题?

UPDATE

这里有一个例证 image

(1)是您接触之前(2)当你触摸按钮会发生什么。

我基本上只是想复制这种效果,我猜想一个透明的'叠加',就像当你触摸一个按钮时会发生什么,但没有边框。

+0

可能包括对我们这些谁不使用Facebook的屏幕截图? –

+0

[link] http://tinypic.com/r/160tmo/6 (1)在触摸之前 (2)是触摸链接时发生的情况。 我基本上只是想复制这种效果,我猜想是一个透明的'叠加',就像当你触摸一个按钮时会发生什么,但没有边框 – Imme22009

+0

请不要在与Xcode无关的问题中使用'xcode'标签。 – 2012-11-21 18:14:54

回答

1

使用以下:

UIButton *yourButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[yourButton setFrame:CGRectMake(0, 0, 200, 44)]; 
[yourButton setTitle:@"like" forState:UIControlStateNormal]; 

[yourButton setBackgroundImage:[UIImage imageNamed:@"normal.png"] forState:UIControlStateNormal]; 
[yourButton setBackgroundImage:[UIImage imageNamed:@"gradient.png"] forState:UIControlStateHighlighted]; 

// Round corners? Requires Quartzcore framework 
[yourButton.layer setCornerRadius:8.0f]; 
[yourButton.layer setMasksToBounds:YES]; 
[yourButton.layer setBorderWidth:0.0f]; 
+0

谢谢你。圆角也很好添加。 – Imme22009

+0

祝你好运! – Tieme

1

用所需的颜色制作UIImage,并调用setBackgroundImage:forState:以突出显示状态(用户点击该按钮时突出显示该按钮);

+0

就这么简单?谢谢! – Imme22009