美文网首页
iOS 15.0 Tab Bars笔记

iOS 15.0 Tab Bars笔记

作者: 启发禅悟 | 来源:发表于2021-11-23 14:49 被阅读0次

    在iOS 15.0中,Tab Bar的背景也有同Navigation Bars同样的问题,常见的问题就是背景变成透明了,或者内嵌的ScrollView滚动到最底端的时候,Tab Bar的背景变成透明的了。

    所以我们同样需要添加scrollEdgeAppearance的值,建议和standardAppearance的值保持一致。例如:

        UITabBarAppearance *tabBarAppearance = [[UITabBarAppearance alloc] init];
        [tabBarAppearance configureWithDefaultBackground];
        [[UITabBar appearance] setStandardAppearance:tabBarAppearance];
        if (@available(iOS 15.0, *)) {
            [[UITabBar appearance] setScrollEdgeAppearance:[UITabBar appearance].standardAppearance];
        }
    

    一般情况下,我们使用系统默认的Tab Bars就可以了,如果需要配置外观,可以通过下面的外观属性进行精确的配置。

    • UIBarAppearance
    • UITabBarItemAppearance
    • UITabBarItemStateAppearance

    例如:

        UITabBarAppearance *tabBarAppearance = [[UITabBarAppearance alloc] init];
        [tabBarAppearance configureWithDefaultBackground];
        UITabBarItemAppearance *stackedLayoutAppearance = [[UITabBarItemAppearance alloc] initWithStyle:UITabBarItemAppearanceStyleStacked];
        stackedLayoutAppearance.normal.iconColor = [UIColor systemPurpleColor];
        stackedLayoutAppearance.selected.iconColor = [UIColor systemBrownColor];
        tabBarAppearance.stackedLayoutAppearance = stackedLayoutAppearance;
        [[UITabBar appearance] setStandardAppearance:tabBarAppearance];
        if (@available(iOS 15.0, *)) {
            [[UITabBar appearance] setScrollEdgeAppearance:[UITabBar appearance].standardAppearance];
        }
    

    如果需要特殊的功能,例如咸鱼风格的Tab Bar,那么一般是自定义Tab Bar来覆盖系统的。

    目前我用到的Tab Bar的第三方库,AxcAE_TabBar 还不错,应该能满足各种需求。

    相关文章

      网友评论

          本文标题:iOS 15.0 Tab Bars笔记

          本文链接:https://www.haomeiwen.com/subject/ipvbtrtx.html