我知道Popover控制器只在iPad设备上使用,但在下面的问题中有一个用户提到的类别的评论,代码如下,UIPopoverController for iphone not working?
// UIPopoverController+iPhone.h file
@interface UIPopoverController (iPhone)
+ (BOOL)_popoversDisabled;
@end
// UIPopoverController+iPhone.m file
@implementation UIPopoverController (iPhone)
+ (BOOL)_popoversDisabled {
return NO;
}
@end
这条路对吗?苹果会批准吗?
我的iPad应用程序已经完成了,现在我正在使它成为通用应用程序,所以我不想使用任何自定义的弹出窗口,所以我想添加这个类别,这样它就可以解决我的问题,并减少开发工作。
发布于 2013-12-16 20:03:07
这是一种非常老套的方式,你将冒很大的风险把它放到AppStore上。当然,有人可能在商店里放了一个版本,但他们忽略了这一点,但它随时可能被打破,苹果可能会决定删除他的应用程序。
你在iPhone上测试过popovers吗?你会在iOS7.1中测试吗?它在iOS7.2或iOS 7.3上的工作原理是一样的吗?
一个更好的解决方案是采用popovers的开源实现,并将其用于iPhone (或两者都使用)。
发布于 2013-12-16 20:00:26
我有与弹出在iPhone的现场应用程序。你只需要为弹出窗口创建界面
NSObject+UIPopover_Iphone.h
#import <Foundation/Foundation.h>
@interface UIPopoverController (overrides)
+(BOOL)_popoversDisabled;
@end
NSObject+UIPopover_Iphone.m
#import "NSObject+UIPopover_Iphone.h"
@implementation UIPopoverController (overrides)
+(BOOL)_popoversDisabled
{
return NO;
}
@end
现在只需在视图控制器中导入NSObject+UIPopover_Iphone.h
即可。
编辑
对于iOS 8,您可以使用
https://stackoverflow.com/questions/20610067
复制相似问题