【问题标题】:How to use UITabBar without images... means with text only如何在没有图像的情况下使用 UITabBar... 仅表示文本
【发布时间】:2016-12-28 19:30:09
【问题描述】:

我想使用 UITabBar 但没有图像。我希望文本占据全部控制空间。 我尝试将图像设置为零,但文本很小并且与 tabbaritem 的底部对齐。

【问题讨论】:

    标签: iphone uitabbar


    【解决方案1】:

    这个函数改变所有UITabBarItems的字体:

    [[UITabBarItem appearance] setTitleTextAttributes: aNSDictionaryOfTextAttributes];
    

    您可以使用类似于此答案here 中的属性字典来指定字体类型和大小。然后用这个负偏移文本的垂直位置:

    [[UITabBarItem appearance] setTitlePositionAdjustment:UIOffsetMake(0.0, -18.0)];
    

    【讨论】:

    • @meadlai 您能否对声称无法尝试和当前化这个问题的答案投反对票?谢谢
    • 我必须为特定的控件状态设置标题文本属性。在 Swift 中,例如:UITabBarItem.appearance().setTitleTextAttributes([...], forState: UIControlState.Normal)
    【解决方案2】:

    将此复制到您的didFinishLaunchingWithOptions

    NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:17.0], NSFontAttributeName, nil];
    [[UITabBarItem appearance] setTitleTextAttributes:attributes forState:UIControlStateNormal];
    [[UITabBarItem appearance] setTitlePositionAdjustment:UIOffsetMake(0.0, -13.0)];
    

    【讨论】:

      【解决方案3】:

      虽然我不确定您是否可以那样使用 UITabBar,但另一种方法是使用 UIToolbar 并将“自定义”UIBarButtonItems 样式设置为“普通”。这会给你一个没有图像的栏,并让文本占据整个控制空间。

      【讨论】:

        【解决方案4】:

        即使我用谷歌搜索了很多相同的东西,我仍然无法做到这一点

        这是默认设置,该文本位于标签栏中的@底部...

        但是还有一个替代方案,因为您需要将 整个 tabitem 创建为文本

        只需使用上面写有文字的图像。

        完成了!!!

        希望这对我有帮助

        【讨论】:

        • 这个答案已经过时了,有可能。很简单,看我的回答
        • @meadlai就在这个的正下方,函数是:[[UITabBarItem外观] setTitleTextAttributes: aNSDictionaryOfTextAttributes];
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-17
        • 2015-02-22
        相关资源
        最近更新 更多