UITabBarController图标在触摸时改变高度

时间:2017-07-20 13:33:11

标签: ios uitabbar uitabbaritem uiedgeinsets

我遇到UITabBarController的问题,如果我将手指放在上面并向上或向下拖动,图标会改变尺寸,我的拖动动作会让它们失去高度,我该怎么办呢?

这是我的代码:

override func viewWillAppear(_ animated: Bool) {
   .................

    vc_friends.tabBarItem.imageInsets   = UIEdgeInsets(top: 6, left: 0, bottom: -5, right: 0)
    vc_topCharts.tabBarItem.imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -5, right: 0)
    vc_newsfeed.tabBarItem.imageInsets  = UIEdgeInsets(top: 6, left: 0, bottom: -5, right: 0)
    vc_myProfile.tabBarItem.imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -5, right: 0)
    vc_pools.tabBarItem.imageInsets     = UIEdgeInsets(top: 6, left: 0, bottom: -5, right: 0)

    self.viewControllers = [vc_friends,vc_topCharts,vc_newsfeed,vc_pools,vc_myProfile]

    self.selectedIndex = 2
}

这就是它的样子:

correctly displayed tab bar item

...如果我点击它并将手指放在上面并向上或向下移动我的手指:

distorted tab bar item

1 个答案:

答案 0 :(得分:2)

当您的负值与另一个方向的正值相反时,这是一个已知问题。将你的插图更改为:

UIEdgeInsets(top: 6, left: 0, bottom: -6, right: 0)