iOS18.0 iPad适配问题-tabbar

问题

系统的tabbar样式变更造成底部自定义的tabbar无法正常显示

解决方案

typescript 复制代码
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 180000
        if (@available(iOS 18.0, *)) {
            if (UIDevice.currentDevice.userInterfaceIdiom == UIUserInterfaceIdiomPad) {
                self.mode = UITabBarControllerModeTabBar;
                self.traitOverrides.horizontalSizeClass = UIUserInterfaceSizeClassUnspecified;
                NSString *tabContainerClassName = [NSString stringWithFormat:@"%@%@%@", @"_UITab", @"Container", @"View"];
                for (UIView *subview in self.view.subviews) {
                    if ([NSStringFromClass(subview.class) isEqualToString:tabContainerClassName]) {
                        [subview setHidden:YES];
                    }
                }
            }
        }
    #endif

判定iPad及18.0以上系统,重新对UITabbarController的子类进行模式重置和底部方向设定,去除二级controller存在_uitab等子类.

相关推荐
Rex_Code2 小时前
iOS Google登录
ios
kph_Hajash5 小时前
Xcode16 调整 Provisioning Profiles 目录导致证书查不到
ios·cronet·provisioning·profiles
WDeLiang5 小时前
optool为macho文件增加动态库
学习·ios
帅次6 小时前
Flutter Expanded 与 Flexible 详解
android·flutter·ios·小程序·webview
ii_best8 小时前
选择 iOS 按键精灵无根有根越狱辅助工具的理由
ios
墨雪遗痕9 小时前
使用 inobounce 解决 iOS 皮筋效果导致的无法下拉刷新
ios
依旧风轻9 小时前
iOS 冷启动时间监控:启动起点有哪些选择?
macos·ios·cocoa·sqi·coldstart
鸿蒙布道师9 小时前
鸿蒙NEXT开发LRUCache缓存工具类(单例模式)(ArkTs)
android·ios·华为·harmonyos·arkts·鸿蒙系统·huawei
键盘敲没电11 小时前
【iOS】Blocks学习
学习·ios·性能优化·objective-c·cocoa
学前端搞口饭吃11 小时前
uniapp打ios包
ios·uni-app