您好我试图在用户点击屏幕的位置添加一个按钮。
这是我的 UIView 文件中的代码
- (void)drawRect:(CGRect)rect {
// Drawing code
NSLog(@"drawRect, %i, %i", firstTouch.x, firstTouch.y);
[tagButton drawRect:CGRectMake(firstTouch.x, firstTouch.y, 100, 200)];
[self addSubview:tagButton];
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
firstTouch = [touch locationInView:self];
[self setNeedsDisplay];
}
这是来自 firstTouch 的日志
2009-10-01 17:27:23.743 文本[2521:207] drawRect, 0, 1080311808
我如何获得触摸的 x、y 点,并在该点上创建一个 uibutton?
任何帮助将不胜感激,谢谢
这就是我想出的,它将按钮添加到视图中。但是当我弹出这个视图时,它崩溃了。我似乎找不到任何问题。任何人都可以看到问题是什么?
UIButton *newButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[newButton setFrame:CGRectMake(self.firstTouch.x, self.firstTouch.y, width, 17)];
[newButton setTitle:[textField text] forState:UIControlStateNormal];
[newButton setFont:[UIFont boldSystemFontOfSize:12]];
[newButton setShowsTouchWhenHighlighted:YES];
[newButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[newButton setTitleShadowColor:[UIColor blackColor] forState:UIControlStateNormal];
[newButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
[newButton setContentVerticalAlignment:UIControlContentVerticalAlignmentCenter];
[newButton setBackgroundColor:[UIColor clearColor]];
UIImage *bgImg = [[UIImage imageNamed:@"button_greyblue.png"] stretchableImageWithLeftCapWidth:15.0 topCapHeight:0.0];
[newButton setBackgroundImage:bgImg forState:UIControlStateNormal];
[self setTagButton:newButton];
[self.view addSubview:tagButton];
[newButton release];