как двигать UIButton - PullRequest
       16

как двигать UIButton

0 голосов
/ 14 июля 2011

я создаю UIButton * actionbtn, его изображение по умолчанию - 1.png, а hightlight - 2.png, я выбираю эту кнопку и перемещаю ее в любое место экрана. Мой код -

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
CGPoint touchMoved = [touch locationInView:self];
    actionbtn.frame = CGRectMake(touchMoved.x-40, touchMoved.y-40, 80, 80);
}

если я нажал кнопку и переместил ее, ее нельзя переместить, но если я коснусь экрана и переместлюсь по экрану, кнопка может работать ...

Ответы [ 3 ]

2 голосов
/ 14 июля 2011

Попробуйте это:

http://developer.apple.com/library/ios/#samplecode/MoveMe/Introduction/Intro.html#//apple_ref/doc/uid/DTS40007315

Это пример с UIB-кнопкой, которая перемещается на экране ...

0 голосов
/ 14 мая 2013

добавить условие if в функцию touchesMoved.

UITouch *touch = [touches anyObject];    
if( touch.view == button){
     [button.center = [touch locationInView:self.view];
    }
0 голосов
/ 14 июля 2011

Кнопка перемещается, когда вы продолжаете касаться экрана, потому что вы реализовали -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;. Если вы пытались переместить кнопку, просто касаясь экрана в любом месте, поместите этот код в -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;.

...