получить кадр UITextField в UITableView для отображения UIPopover - PullRequest
0 голосов
/ 29 ноября 2010

Мне нужно представить UIPopover из динамически сгенерированных UITextFields в UITableView. Все они помечены уникально, но когда я пытаюсь использовать этот код, поповер появляется только в верхнем левом углу:

[self.numbersPopover presentPopoverFromRect:[self.childSkusTable viewWithTag:aTag].frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

EDIT:
Я вижу, что нахожу фрейм для этого тегового элемента, но он относится к его родительской ячейке, в этом случае фрейм этого тегового элемента равен 0,0 для x, y. Как мне узнать его положение в главном окне?

1 Ответ

2 голосов
/ 29 ноября 2010

Ответ на этот вопрос только в том случае, если это кому-то еще нужно.

Вы должны получить позицию UiTextFields в UIWindow следующим образом:

UIView *v = [self.view viewWithTag:aTag];
CGPoint pos = [v.superview convertPoint:v.frame.origin toView:nil];

Тогда я просто сделал это:

[self.numbersPopover presentPopoverFromRect:CGRectMake(pos.x, pos.y, 35, 10) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

Приведенная выше форма кода для определения местоположения была получена из этих вопросов и ответов: iPhone - Получить позицию UIView во всем UIWindow

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