添加一个图像按钮,然后按一下按钮没有检测
问题描述:
我添加了一个自定义按钮,并且加入了UIImage
它。自从我加入了图像,我不能按一下按钮,它需要3-4企图待检测的点击的代码执行。为什么是这样 ?添加一个图像按钮,然后按一下按钮没有检测
UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];
UIImage *buttonImage = [UIImage imageNamed:@"button.png"];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
button.frame = CGRectMake(10.0, 90.0, 150.0, 40.0);
button.backgroundColor = [UIColor clearColor];
[button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];
[customView addSubview:button];
的buttonClick方法:
-(void)buttonClick:(id)sender {
NSLog (@"Click");
}
答
@Illep我用你的代码在一个演示应用程序,并增加了button.png为好。代码工作非常好。
由于要添加此按钮,独立的观点,即
[customView addSubview:button];
所以有相当多的机会,要么这个customView或按钮的用户交互取得了一些添加您的customView的帧(外尽管机会相当少)。你可以通过设置clipSubView为TRUE,您customView检查这个..
希望它能帮助。
+1
问题可能是你的'customView'区域,当按钮不适合它的区域,那么你不能与它进行交互。由于拉胡尔建议使用clipToSubview为TRUE。然后按钮将成为自定义视图的焦点/您可以记录位置和大小以进行比较。如果不是再次添加注释,希望它有所帮助。 – iDroid 2012-03-19 04:44:34
当你注释掉图像部分,做它实际上更好地工作?我想不出任何办法的图像会影响一个可点击的按钮......除非像让你点击错了地方? – Ahti 2012-03-19 02:28:00
检查customView框架。这对按钮来说足够大吗? – ArunGJ 2012-03-19 04:16:02
刚刚尝试过你的代码,似乎工作正常,但是我做了'[self.view addSubview:button]',尝试'self.view'并查看可点击性是否有任何变化。 – iNoob 2012-03-19 04:27:16