1

我查看了谷歌和堆栈流,虽然我发现了类似的响应,但在我开始寻找解决这个问题的方法之前,我仍然没有更聪明。

我有一个按钮,每次按下我都希望它显示下一张图像。

我相信我必须设置我项目中所有图像的数组来执行此操作,然后可能类似于按钮的计数器,以便它知道要在 UIImageView 中显示哪个图像。

所以项目是这样的:

1 个视图控制器,带有 1 个 UIImageView、1 个按钮和 5 个图像。

UIImageView 占据整个屏幕,图像 1 显示在 UIImageView 中,按下按钮,显示图像 2,再次按下按钮显示图像 3,依此类推,直到你到达图像 5,一次在图像 5,如果你再次按下按钮,它将回到起点(图 1)。

我很新,我想要一些示例代码来帮助,不是复制和粘贴,而是研究它是如何工作的,以及我如何在我的应用程序中实现类似的。

我希望这是有道理的。我还没有使用术语,所以白痴证明建议会很好。

4

1 回答 1

1

好的,我在这里为您准备了一些示例

在 .h 中定义

UIButton *b;
UIImageView *i;
NSArray *a;
int count;

并将这些写在 .m

- (void)viewDidLoad
{
    [super viewDidLoad];

    b = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    b.frame = CGRectMake(0, 0, 100 ,100);
    [b addTarget:self action:@selector(changeImage) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:b];

    i = [[UIImageView alloc]initWithFrame:CGRectMake(0, 100, 100, 100)];
    [self.view addSubview:i];

    a = [NSArray array];
    //init array with images what you have

    count = 0;
    [i setImage:[a objectAtIndex:count]];
}

-(void) changeImage{
    count = ++count%5;
    [i setImage:[a objectAtIndex:count]];
}

不要遵循我的命名约定,这是一个例子。你应该好好写出来。一旦您放入图像,这应该可以工作。如果您有任何问题,请告诉我,但请在询问任何内容之前先进行谷歌搜索。

于 2012-07-16T20:33:36.563 回答