我正在尝试通过代码更改标签栏中显示的图像.我目前正在使用Swift和Xcode 6 beta 3.我在Images.xcassets中导入了tabBarImage.png和tabBarImage@2x.png,在AppDelegate中我写了这个:
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
let mainColor = UIColor(red: 1.0, green: 91.0/255.0, blue: 84.0/255.0, alpha: 1.0)
UITabBar.appearance().barTintColor = mainColor
let tabBarController = self.window!.rootViewController as UITabBarController
var tabBarSubcontrollers = tabBarController.viewControllers as [UIViewController]
let tabBarImages = ["tabBarImageOne", "tabBarImageTwo", "tabBarImageThree"]
for index in 0..<(tabBarSubcontrollers.count) {
let tabBarImage = UIImage(named: "\(tabBarImages[index])").imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
let newTabBarItem = UITabBarItem(title: "", image: tabBarImage, selectedImage: tabBarImage)
newTabBarItem.imageInsets = UIEdgeInsetsMake(5.0, 0.0, -5.0, 0.0)
tabBarSubcontrollers[index].tabBarItem = newTabBarItem
}
return true
}
Run Code Online (Sandbox Code Playgroud)
如果我在模拟器上运行它可以正常工作并在标签栏中显示图像.如果我在我的iPad(使用iOS 7.1.1)上运行它,它不会加载图像并显示这个奇怪的错误:
Unsupported pixel format in CSI
Unable to create unsliced image from csi bitmap data.
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?可能是某种bug吗?什么是CSI位图数据呢?
| 归档时间: |
|
| 查看次数: |
1890 次 |
| 最近记录: |