Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UtiAbbar图像在模拟器上可见,在设备上消失_Iphone_Image_Ios Simulator_Uitabbar - Fatal编程技术网

Iphone UtiAbbar图像在模拟器上可见,在设备上消失

Iphone UtiAbbar图像在模拟器上可见,在设备上消失,iphone,image,ios-simulator,uitabbar,Iphone,Image,Ios Simulator,Uitabbar,在iPhone应用程序中,我有一个带有三个标签的UITabBar。一个具有系统映像,另外两个具有自定义映像。这些是PNG,30x30,基于调色板,大部分是透明的。这些图像在模拟器中显示得很好,但在设备上,我看到的只是标签上的灰色渐变正方形。这些图像上的形状一开始是灰色的,但它们确实在模拟器上显示出来 有什么想法吗?设备本身比模拟器更挑剔图像格式。我曾经有过很多例子,在模拟器中出现了一些东西,但在电话中却没有。对我来说,一直行之有效的方法是将我所有的PNG编码为24位PNG-24(在Photosh

在iPhone应用程序中,我有一个带有三个标签的UITabBar。一个具有系统映像,另外两个具有自定义映像。这些是PNG,30x30,基于调色板,大部分是透明的。这些图像在模拟器中显示得很好,但在设备上,我看到的只是标签上的灰色渐变正方形。这些图像上的形状一开始是灰色的,但它们确实在模拟器上显示出来


有什么想法吗?

设备本身比模拟器更挑剔图像格式。我曾经有过很多例子,在模拟器中出现了一些东西,但在电话中却没有。对我来说,一直行之有效的方法是将我所有的PNG编码为24位PNG-24(在Photoshop中)——对于图标等,增加的文件大小是微不足道的,它解决了我无法显示图像的问题。

图像应该是透明的白色。它在UI设计指南中。在我的情况下,它是灰色的透明。模拟器原谅了这一点,设备没有。

大约3小时后,我注意到不太明显的。。。文件名在设备上使用区分大小写的规则进行处理,但不在XCode模拟器中处理(从XCode 4.6开始)

例如:

如果实际文件名(资源)是“first.png”,那么代码中需要使用以下内容---

//执行此操作self.tabBarItem.image=[UIImage ImageName:@“first.png”]

//不是这个self.tabBarItem.image=[UIImage ImageName:@“First.png”]


在更改代码之前,请先查看这一点

遗憾的是,您必须为Windows Mobile编写代码(颤抖)才能使用它;)为WM编码比实际使用它要好得多。