如何在UIButton中显示Hi-Res可伸缩背景图像?

时间:2010-08-05 05:07:37

标签: iphone objective-c ios4

我正在UIView中设置一个带有椭圆形背景图像的自定义按钮。

在iPhone OS 3中,[UIImage:stretchableImageWithLeftCapWidth:topCapHeight:]工作正常。

但是,在带有iPhone 4的iOS 4中(意味着高分辨率),背景图像不会延伸。

以下是相关代码:

UIButton* btn = [UIButton buttonWithType:UIButtonTypeCustom];
[btn setFrame:CGRectMake(0, 0 , 200 , 35)];
btn.titleLabel.font = [UIFont boldSystemFontOfSize:12];
[btn setTitle:@"Custom Button" forState:UIControlStateNormal];

UIImage* bgImg = [[UIImage imageNamed: @"buttonBg"] stretchableImageWithLeftCapWidth:6 topCapHeight: 6];
    // butonBg.png : 46 x 35px
    // butonBg@2x.png : 92 x 70px
[btn setBackgroundImage:bgImg forState:UIControlStateNormal];

[self.view addSubview:btn];

我错过了什么?这是一个扩展问题吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

看起来你可以使用UIButton的setBackgroundImage而不是image。