iOS8上显示在错误位置的popover(在iOS 7上正常工作)

iOS8上显示在错误位置的popover(在iOS 7上正常工作),ios8,uipopovercontroller,uipopover,Ios8,Uipopovercontroller,Uipopover,我面临着一个与UIPopover相关的问题。在iOS 7.1上,popover的位置(即xCoordinate和yCoordinate位置)正确,但在iOS 8上,相同的popover从略高于所需y位置的位置弹出。我的应用程序中有两个弹出窗口:第一个是通过编程方式创建的,并使用以下方法显示: presentPopoverFromRect:inView: 当我在rect中添加一个150的偏移量时,它会出现在iOS8上的正确位置 第二个popover使用segue直接从故事板加载 我这里有两个问题

我面临着一个与UIPopover相关的问题。在iOS 7.1上,popover的位置(即xCoordinate和yCoordinate位置)正确,但在iOS 8上,相同的popover从略高于所需y位置的位置弹出。我的应用程序中有两个弹出窗口:第一个是通过编程方式创建的,并使用以下方法显示:

presentPopoverFromRect:inView:
当我在rect中添加一个150的偏移量时,它会出现在iOS8上的正确位置

第二个popover使用segue直接从故事板加载

我这里有两个问题:

  • 是否有任何方法/途径可供我遵循,以便在iOS 7和iOS 8版本上使用相同的代码

  • 如何处理/更改呈现/嵌入到故事板文件中按钮的弹出框的rect

  • 如果第一个问题有一个解决方案,那么我认为这将解决问题


    感谢您在此问题上提供的帮助。

    在iOS 8中介绍UIPopOverController

    而不是

    popOverController.popoverContentSize = CGSizeMake(100 , 200 ); 
    
    (popOverController是UIPopOverController类的对象)

    试试这个(对于iOS 8)


    (控制器是您正在演示的视图控制器)

    这一个幸运吗?
    controller.preferredContentSize = CGSizeMake(100 , 200 );