类型为UIButtonTypeRoundedRect的iOS UIButton显示幻像按钮?

时间:2013-11-05 10:18:17

标签: objective-c uibutton ios7

我们有一个非常简单的带有两个背景图像的UIButton,每当按钮被切换时,按钮的左上角会出现一个小矩形。仅当按钮是UIButtonTypeRoundedRect时才会出现此问题,如果我切换到UIButtonTypeCustom它工作正常。有人有线索吗?

phantom button

UIButton *mainBtn=[UIButton buttonWithType:UIButtonTypeRoundedRect];
mainBtn.tag=0;
mainBtn.frame=CGRectMake(128, 8, 60.0, 60.0);
mainBtn.adjustsImageWhenHighlighted=NO;
[mainBtn setBackgroundImage:[UIImage imageNamed:@"main_tabBar_btn_main.png"] forState:UIControlStateNormal];
[mainBtn setBackgroundImage:[UIImage imageNamed:@"main_tabBar_btn_main_selected.png"] forState:UIControlStateSelected];
[tabBarView addSubview:mainBtn];
[mainBtn addTarget:self action:@selector(tabBarBtnTap:) forControlEvents:UIControlEventTouchUpInside];

2 个答案:

答案 0 :(得分:2)

试试这个。 。 。

选择一个自定义按钮,如果你想获得圆角,请编写以下代码

#import <QuartzCore/QuartzCore.h>

btn.layer.borderColor = [UIColor blackColor].CGColor;

btn.layer.borderWidth = 1.0;

btn.layer.cornerRadius = 10;

答案 1 :(得分:0)

你想要使用UIButtonTypeRoundedRect以获得圆角(即圆圈)的唯一原因是什么?如果是这样,请尝试使用UIButtonTypeCustom,并将mainBtn.layer.cornerRadius设置为您想要的半径。