【问题标题】:iOS Swift Tab Bar Icon Insets Being Erased At RuntimeiOS Swift 选项卡栏图标插图在运行时被擦除
【发布时间】:2016-09-27 00:10:53
【问题描述】:

我在标签栏控制器中有两个 ViewController。在界面生成器中,我已将图像插图(5、5、5、5)应用到标签栏图标,以获得我想要的大小。最初运行模拟器时一切看起来都很棒,但是当我切换到第二个 ViewController 时,两个选项卡栏图标都会自动调整为默认值(0、0、0、0)。当我返回到第一个 ViewController 时,两个图标都被困在默认大小,没有插图。

注意:我的图标图像是 XCassets 文件夹中的 .pdf 文件(设置为单个矢量比例因子)。我已经看到其他建议“平衡”插图的线程(顶部为 5,底部为 -5)。但这会将图像从顶部压缩 5 倍,并将其向底部拉伸 5 倍。我不明白这是如何平衡图像大小的。

如果有人知道什么代码会在运行时设置插入,也许我可以使用它而不是在界面生成器中设置插入?提前致谢。

【问题讨论】:

    标签: xcode swift tabbar


    【解决方案1】:

    阅读文档,UIBarItemUITabBarItem 的超类)具有属性imageInset,您可以通过self.tabBarController.tabBar.items 访问标签栏项目。

    如果不自己进行测试,我认为您可能会遇到在阴影更改时(因为选择)而重置插图的问题。

    因此,您可能会发现每次更改选择时(我认为可以通过委托检测到),您需要将插图重置为所需的大小。

    或者,您可能会发现将源图像自定义为所需的最终外观可能更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-21
      • 2014-03-21
      • 2015-01-15
      • 2017-02-17
      相关资源
      最近更新 更多