我正在将我的iPhone应用程序升级到高分辨率图形,我遇到了旧设备的一些问题.这种情况涉及我的UITabBar图标.看一看:

顶部截图看起来正确.它是在运行OS4的最新一代iPhone(新屏幕)上捕获的.但是,第二个截图是完全错误的.高分辨率图标以100%大小显示并且正在被裁剪.第二张截图是从运行OS4的第二代iPod touch(旧屏幕)中截取的.
所以,我真的很困惑.我已经阅读了Apple的文档,据我所知,我正在做他们需要的一切.在我的应用程序包中,我的图像命名为:
在界面构建器中,我已指定要在选项卡栏中使用的每个图像的低分辨率版本(文件名为WITHOUT"@ 2x").如果我正确理解iPhone文档,设备应自动检测屏幕分辨率并显示高分辨率版本(如果可用).所以,如果有的话,我的iPod touch几乎看不到它的显示分辨率.我在这里错过了一些东西吗?
任何可以提供的帮助或见解将不胜感激!谢谢.
更新1:
到目前为止没有运气.我采用手动方法并将以下内容添加到viewDidLoad我的命令中UITabBarController:
- (void)viewDidLoad {
[super viewDidLoad];
UITabBarItem *tab;
UIViewController *item;
tab = [[UITabBarItem alloc] initWithTitle:@"Featured" image:[UIImage imageNamed:@"tab-featured.png"] tag:0];
item = [self.viewControllers objectAtIndex:0];
item.tabBarItem = tab;
[tab release];
tab = [[UITabBarItem alloc] initWithTitle:@"Topics" image:[UIImage imageNamed:@"tab-topics.png"] tag:1];
item = [self.viewControllers objectAtIndex:1];
item.tabBarItem = tab;
[tab release];
tab = [[UITabBarItem alloc] initWithTitle:@"Video" image:[UIImage imageNamed:@"tab-video.png"] tag:2];
item = [self.viewControllers objectAtIndex:2];
item.tabBarItem = tab;
[tab release];
tab = [[UITabBarItem alloc] initWithTitle:@"Experts" image:[UIImage imageNamed:@"tab-experts.png"] tag:3];
item = [self.viewControllers objectAtIndex:3];
item.tabBarItem = tab;
[tab release];
tab = [[UITabBarItem alloc] initWithTitle:@"Events" image:[UIImage imageNamed:@"tab-events.png"] tag:4];
item = [self.viewControllers objectAtIndex:4];
item.tabBarItem = tab;
[tab release];
}
Run Code Online (Sandbox Code Playgroud)
这仍然产生与上面相同的结果(标签栏中的大截止图标).有没有人听说过UITabBar填充高分辨率图标对的问题?
更新2:
关于詹姆斯的评论:
是的,我能够解决这个问题.在XCode中,文件引用似乎是一个错误.我的想法已经用完了,所以我回过头来开始从我的应用程序中删除所有的@ 2x图像,只是为了让所有内容再次使用低分辨率的艺术作品正确显示.一旦应用程序再次显示适当大小的图像(虽然分辨率很低),然后我逐一添加@ 2x图像,等待一些东西中断.第二次进入似乎工作正常.不知道为什么或发生了什么.SDK似乎只是交换了一些关于发生了什么的电线.
据我了解,神奇之处在于 UIImage 的imageNamed:,imageWithContentsOfFile:和initWithContentsOfFile:方法。传递其中一个不带“@2x”或文件扩展名的 NSString 文字,它会神奇地找到适合您设备的文件的正确版本。
这意味着,标签栏项目的图像需要以编程方式设置。可能是 IB 还不够聪明,无法编写一个根据设备分辨率动态选取图像的笔尖。因此,请尝试在您的方法中手动设置这些图像-viewDidLoad。
| 归档时间: |
|
| 查看次数: |
3852 次 |
| 最近记录: |