iphone - 在 iPhone 上更改背景图像的按钮

标签 iphone ios

我有一个小错误。每个按钮都有两个代码片段。一个是这样的:

-(IBAction)clickoneButton:(id)sender
{
    [sender setBackgroundImage:[UIImage imageNamed:@"cnumber_1.jpg"] forState:UIControlStateNormal];
}

另一个是:

-(IBAction)oneButton:(id)sender
{
    self.enteredPhoneNumberString = [self.enteredPhoneNumberString stringByAppendingString:[NSString stringWithFormat:@"%d", 1]];
    [self updateFormattedPhoneNumberLabel];

    [sender setBackgroundImage:[UIImage imageNamed:@"Number_1.jpg"] forState:UIControlStateNormal];
}

第一个设置为 Touch Down。另一个用于 Touch Up Inside。该应用程序看起来像手机的常规拨号器。所以第一个图像是一个浅蓝色按钮,第二个是一个深蓝色按钮,就像 iPhone 的拨号器一样。问题是当我按下按钮时,深色图像似乎仍然在 Touch Down 浅蓝色图像后面。它正在变成颜色较浅的图像,但阴影几乎就像深色图像通过它或其他东西透明一样。不知道如何解释它。如果您对 Touch Down 发生时为什么浅蓝色变暗有任何想法,我将不胜感激。谢谢

Button before touch and after release 触摸前和释放后的按钮(正确)

Button on Touch Down Touch Down 按钮(无法正常工作)

What the Touch Down button should look like 触地按钮应该是什么样子

最佳答案

根据您提供的两段代码,您没有为按下按钮时设置图像。尝试更新您的代码以在加载 View 时使用以下内容:

// sets the background image for when the button is not pressed
[sender setBackgroundImage:[UIImage imageNamed:@"cnumber_1.jpg"] forState:UIControlStateNormal];

// sets the background image for when the button is pressed
[sender setBackgroundImage:[UIImage imageNamed:@"Number_1.jpg"] forState:UIControlStateHighlighted];

关于iphone - 在 iPhone 上更改背景图像的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8524579/

相关文章:

iphone - 将带有图像文本和 url 的帖子分享到 facebook

ios - 无法快速检查提交按钮的条件

iphone - 如何简化 iPhone 本地化?

iphone - 返回键的 Unichar 数字?

iPhone UITableViewController 自定义布局

ios - 更新 Xcode10 中的 J2ObjC 库

ios - 具有预定义属性的 UITableView 子类

ios - ScrollView 中同时居中和滚动的约束

html - ios cordova - 使用垂直和水平滚动时的滚动问题

ios - 如何以编程方式获取 UIVIewController 的 IBOutlet 列表