CGPoint не получил координацию моей кнопки - PullRequest
0 голосов
/ 15 октября 2010

привет, это мой код, он неправильный

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    NSLog(@"Inside touchesBegan");
    UITouch *touch = [[event touchesForView:self.view] anyObject];
    CGPoint location = [touch locationInView:touch.view];
     NSLog(@"pointx: %f pointy:%f", location.x, location.y);
     NSLog(@"about to enter do");
    if(CGRectContainsPoint(b_do.frame, location))
    {
        NSLog(@"inside do");
        [self b_do];
        [b_do setHighlighted:YES];

    }
}

в журнале я получил это:

2010-10-15 21:00:42.555 phone[14280:207] Inside touchesBegan
2010-10-15 21:00:42.557 phone[14280:207] pointx: 0.000000 pointy:0.000000
2010-10-15 21:00:42.557 phone[14280:207] about to enter do
2010-10-15 21:00:42.558 phone[14280:207] about to exit touchesBegan

Ответы [ 2 ]

0 голосов
/ 16 октября 2010

Моя проблема решена путем замены этого кода:

UITouch *touch = [[event touchesForView:self.view] anyObject];

На этот:

UITouch *touch = [touches anyObject];
0 голосов
/ 15 октября 2010

Возможно, проблема в строке с self.view.Делегатом UITouch обычно является сам подклассовый объект UIView (поскольку это представление, просто используйте «self»), а не контроллер представления (где self.view будет ссылаться на представление контроллера).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...