自定义按钮显示在模拟器上,但不在iPhone设备中

时间:2011-12-25 20:39:57

标签: iphone objective-c ios cocoa-touch

我正在开发一个iOS 4应用程序,使用最新的稳定SDK(XCode 4.2)。

我有一个带有两个自定义按钮的Xib。这两个按钮具有相同的大小和位置(一个在另一个上)。唯一不同的是他们有不同的形象。

一个用户触摸第一个按钮,它会消失,然后出现第二个按钮。我使用这种方法来做到这一点:

- (IBAction)backCardCliked:(id)sender
{
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1.5f];
    backCardImage.alpha = 0.0f;
    [UIView commitAnimations];
}

两者都隐藏= NO。

我不知道为什么它可以在模拟器(iOS 5)上运行,但不能在iPhone设备上运行(运行iOS 4.3.5)。

有任何线索吗?

2 个答案:

答案 0 :(得分:5)

确认按钮图像的名称拼写与图像文件名称完全相同,包括套管。当你有一个带有零图像的自定义按钮时,它是完全透明的。

这种不同的行为是因为默认的Mac安装在 敏感文件系统中有 case 。模拟器继承了这种环境。 iPhone有一个区分大小写的文件系统。

答案 1 :(得分:0)

检查button.opaque是否设置为NO。