XHLaunchAd icon indicating copy to clipboard operation
XHLaunchAd copied to clipboard

iOS 12 模拟器 跳过按钮位置不对 + 点击无效

Open 295060456 opened this issue 4 years ago • 8 comments

295060456 avatar Oct 27 '20 03:10 295060456

+1

huangrun avatar Nov 12 '20 06:11 huangrun

由于没有提供外部方法修改frame,只有修改源码了,把里面的判断全面屏的宏修改一下就可以了

huangrun avatar Nov 12 '20 07:11 huangrun

怎么改 改哪里 我做会伸手党行不行

295060456 avatar Nov 12 '20 08:11 295060456

修改XH_FULLSCREEN这个宏,方法很多,如增加iPhone12系列的分辨率,或者改成下面这个 if (@available(iOS 11.0, *)) {
isPhoneX = [[UIApplication sharedApplication] delegate].window.safeAreaInsets.bottom > 0.0;
}
(isPhoneX);})

huangrun avatar Nov 12 '20 08:11 huangrun

#define XH_IPHONEX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONEXR ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONEXSMAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1080, 2340), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12MAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1170, 2532), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12PRO ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1170, 2532), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12PROMAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1284, 2778), [[UIScreen mainScreen] currentMode].size) : NO)

#define XH_FULLSCREEN ((XH_IPHONEX || XH_IPHONEXR || XH_IPHONEXSMAX || XH_IPHONE12 || XH_IPHONE12MAX || XH_IPHONE12PRO || XH_IPHONE12PROMAX) ? YES : NO)

295060456 avatar Nov 12 '20 13:11 295060456

#define XH_IPHONEX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONEXR ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONEXSMAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1080, 2340), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12MAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1170, 2532), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12PRO ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1170, 2532), [[UIScreen mainScreen] currentMode].size) : NO) #define XH_IPHONE12PROMAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1284, 2778), [[UIScreen mainScreen] currentMode].size) : NO)

#define XH_FULLSCREEN ((XH_IPHONEX || XH_IPHONEXR || XH_IPHONEXSMAX || XH_IPHONE12 || XH_IPHONE12MAX || XH_IPHONE12PRO || XH_IPHONE12PROMAX) ? YES : NO) 能不能把这个更新一下,用cocopods导入的不好处理一update代码就没了

Yishuhong avatar Feb 03 '21 01:02 Yishuhong

作者本身的意图是想在状态栏下放跳过按钮。所以在XHLaunchAdButton.m 中的initWithSkipType方法中直接修改代码即可。 CGFloat y = 0; if (@available(iOS 13.0, *)) { y = UIApplication.sharedApplication.keyWindow.windowScene.statusBarManager.statusBarFrame.size.height; } else { // Fallback on earlier versions y = UIApplication.sharedApplication.statusBarFrame.size.height; } self.frame = CGRectMake(XH_ScreenW-80,y, 70, 35);//方形

0gsc0 avatar May 19 '21 05:05 0gsc0

作者不打算处理一下吗

SomeZoo avatar Jul 07 '21 01:07 SomeZoo