【发布时间】:2012-09-17 04:11:44
【问题描述】:
我的标签栏只包含文本,没有图像。
问题是文本总是显示在标签的底部,有没有办法将文本定位在中间?
谢谢
【问题讨论】:
标签: objective-c ios5 uitabbar uitabbaritem
我的标签栏只包含文本,没有图像。
问题是文本总是显示在标签的底部,有没有办法将文本定位在中间?
谢谢
【问题讨论】:
标签: objective-c ios5 uitabbar uitabbaritem
知道了!
[tab.tabBarItem setTitlePositionAdjustment:UIOffsetMake(0, -10)]
【讨论】:
are positive for right or down, negative for left or up.,默认情况下iOS认为有图像所以将文本放在底部,我们想要的是提升文本。值 10 是通过反复试验:)
补充一下,如果你在tabBarController中设置了multi viewControllers,你应该使用如下:
for (UITabBarItem* item in tabBarController.tabBar.items)
{
[item setTitlePositionAdjustment:UIOffsetMake(0, -10)];
}
【讨论】:
快速更新。
func tabBarItem(title: String, imageName: String, selectedImageName: String, tagIndex: Int) -> UITabBarItem {
let item = UITabBarItem(title: title,
image: UIImage(named: imageName),
selectedImage: UIImage(named: selectedImageName))
item.titlePositionAdjustment = UIOffset(horizontal:0, vertical:-10)
item.tag = tagIndex
return item
}
//例如
let window = UIWindow.window()
let vc = UIViewController()
vc.tabBarItem = tabBarItem(title: "More", imageName: "icon_more", selectedImageName: "icon_more", tagIndex: 1)
let mainTBC = UITabBarController()
mainTBC.viewControllers = [vc]
window?.rootViewController = mainTBC
window?.makeKeyAndVisible()
【讨论】: