Есть ли способ, который я могу вычислить/обнаружить, если PopOverController находится в верхней части View? Если это так, чтобы показать, что это разрешено. ArrowsDirections: UIPopoverArrowDirectionDown vs allowedArrowDirections: UIPopoverArrowDirectionUp зависит от того, находитесь ли вы внизу или сверху или если есть достаточно места для отображения popOverControl без изменения размера? Альтернатива: я думал о прокрутке представления вниз или вверх если не хватает места, но я бы хотел использовать allowArrowDirections: UIPopoverArrowDirectionDown и allowedArrowDirections: UIPopoverArrowDirectionUp. Какие-либо предложения?PopOverController resize at Top of View
ответ
Вам не нужно будет вычислять, где будет отображаться контроллер popover. Контроллер popover предназначен для указания местоположения, где стрелка может Указывает на точку, в которой будет добавлен popover. Затем контроллер popover вычислит, где у него есть место, чтобы отобразить его всплывающее представление.
Однако, если вы можете ограничить место, где контроллер popover размещает представление popover, указав один или несколько UIPopoverArrowDirection
. Например, предположим, что у вас есть большой вид (вид A) с меньшим подвью (вид B), расположенный в левой части окна A. Если вы хотите показать popover для представления кнопки, расположенного справа от вида B, когда вы представляете, вы можете сказать контроллер поповера только показать свой поповер справа от кадра данной кнопки в виде А вот так:
[popoverController presentPopoverFromRect: buttonView.frame
inView: viewA
permittedArrowDirections: UIPopoverArrowDirectionLeft
animated: YES];
Edit
может вы получаете кадр текстового поля в пространстве координат представления, содержащего вид таблицы ?
CGRect frame = [tableView.superview convertRect: textField.frame fromView: textField.superview];
[popoverController presentPopoverFromRect: frame
inView: tableView.superview
permittedArrowDirections: UIPopoverArrowDirectionLeft
animated: YES];
Предполагая, что вид сверху tableView достаточно велик для ваших нужд, это должно соответствовать отображению popover.
В текущем проекте Im, работающем над мной, у меня есть PopOver, показывающий поверх UITextField внутри UITableviewCell. Если Im в верхней части UItableviewCell, UIPopOverControl изменяет размер до меньшего размера, не позволяя элементам быть видимыми. Мне нужно иметь представление, расположенное сверху или под UITextField – wilforeal
@wilforeal Я отредактировал свой ответ на основе вашего последнего комментария. –
получить ваше прикосновение координаты от
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint touchPoint = [touch locationInView:myView];
NSLog("%lf %lf", touchPoint.x, touchPoint.y);
}
После получения X и Y точки вы можете рассчитать доступное пространство для открытия вашего PopOverController.
Пожалуйста, дайте мне знать, если вам нужна дополнительная помощь.
- 1. Draw Circle on top of image view
- 2. View view resize viewer
- 3. Gradient at Top/Bot of Scrollview Когда есть дополнительный контент
- 4. extjs align top of cell editor to top of row
- 5. UIScrollView Vertical Pan Snapping to top или bottom of view
- 6. Android Pull Down To Reveal View From Top of Activity
- 7. Mesh On always top of the View или Sean
- 8. Удалить клавиатуру или место Picker View on TOP of keyboard
- 9. Android view jfeinstein SlidingMenu top of layouts without move content
- 10. Touchable info (i) button on the top of Scroll View
- 11. iOS background image on top of collection view
- 12. UITextView Text alignmnet at Top
- 13. UIModalPresentationFormSheet resize view
- 14. Resize View в iPad
- 15. View Controller resize
- 16. Sticky div dont stick at top at scroll
- 17. Galleria resize stop working at load()
- 18. Margin-top of Bootstrap modal
- 19. UITabBar top of the screen
- 20. JQuery change 'top' of: after
- 21. Show ImageView top of RelativeLayout
- 22. Fuzzy Top Edge с GDIPlus Resize
- 23. Resize SVG image inside View
- 24. android-append element to top of recycleView
- 25. div right aligned dont keep at top
- 26. NoReverse Match at Delete View
- 27. Android XML Top of List Off Cut
- 28. PopoverController - перераспределена экземпляр
- 29. TableView в PopOverController
- 30. Uncaught TypeError: Невозможно прочитать свойство 'top' of undefined - JQuery
Вы должны проверить свою позицию Y вашей точки касания. вычислить комнату и показать в соответствии с – Hiren
, и какова координата для абсолютной вершины представления? мне нужно получить координату Y UIWindow? или это так же просто, как верх 0? – wilforeal
вы можете проверить событие touch – Hiren