如何通过单击按钮替换另一个图像?

时间:2016-01-17 21:59:26

标签: ios objective-c uiimageview

我几天前开始iOS开发,并因以下问题而停止:图片不会因点击而改变。前一张图片消失了。

ViewController.h

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIImageView *imgView;
- (IBAction)changeImage:(id)sender;
@end

ViewController.m

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

@synthesize imgView;

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)changeImage:(id)sender {
    UIImage *img = [UIImage imageNamed:@"animal_3.png"];
    [imgView setImage: img];}
@end

2 个答案:

答案 0 :(得分:0)

当你设置它时图像消失了我可以假设你的插座&amp;行动是正确定义的。

新形象&#34; animal_3.png&#34;可能不存在。请确保已将其正确添加到images.xcassets并正确命名。还要确保images.xcassets包含在目标包资源中(项目&gt;选择正确的目标&gt;构建阶段&gt;确保images.xcassets包含在复制包资源列表中,如果没有添加它)。

如果您不确定如何调试并查看图像是否已设置。 请尝试使用此代码确认图像实际上已正确加载。

    UIImage *image = [UIImage imageNamed:@"animal_3.png"];
    if (image)
    {
        NSLog(@"Image exists");
    }
    else
    {
        NSLog(@"NO IMAGE");
    }

Adding Images using xcassets

确认xcassets文件已添加到构建阶段(Xcode 7.2)的屏幕截图: enter image description here

答案 1 :(得分:0)

如果前一张图像消失,那就意味着您的“animal_3.png”图像不存在。检查图像的名称可能是。

相关问题