我正在尝试使用故事板编写Xcode 4中的应用程序代码。
我的项目是这样的:
1个表视图控制器
1个带4个按钮的详细视图控制器,
并说6张图片( 1-1.jpg /1-2.jpg/1-3.jpg, 2-1.jpg / 2-2 .jpg / 2-3.jpg。
我有我的应用程序在单击单元格时显示数组中的图像( 1-1.jpg和2-1.jpg )。
这是我的代码:
// TableViewController.m:
@synthesize myTitle = _myTitle;
@synthesize myScene = _myScene;
@synthesize myImages = _myImages;
- (void)viewDidLoad
{
[super viewDidLoad];
self.myTitle = [[NSArray alloc] initWithObjects:@"Chicken", @"Flower", nil];
self.myScene = [[NSArray alloc] initWithObjects:@"1", @"2", nil];
self.myImages = [[NSArray alloc] initWithObjects:@"1-1.jpg", @"2-1.jpg", nil];
}
// DetailViewController.m
@synthesize titleLabel = _titleLabel;
@synthesize sceneLabel = _sceneLabel;
@synthesize imageView = _imageView;
@synthesize myDetailModel = _myDetailModel;
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.title = self.titleLabel.text = [self.myDetailModel objectAtIndex:0];
self.sceneLabel.text = [self.myDetailModel objectAtIndex:1];
self.imageView.image = [UIImage imageNamed:
[self.myDetailModel objectAtIndex:2]];
我希望我的DetailView页面每次按下时都会显示下一张或上一张图像(1-2.jpg / 1-3.jpg ... / 2-2.jpg,2-3.jpg ...)下一个或上一个(黑色)按钮,
当我按下另一个(绿色)按钮时,显示下一个或上一个场景(鸡场景和花场景),
比如https://dl.dropboxusercontent.com/u/7493131/q3.jpg
我不知道如何排列1-2.jpg,1-3.jpg,2-2.jpg和2-3.jpg以及如何处理它们。
我很新,我想要一些示例代码来帮助我们研究它是如何工作的, 以及如何在我的应用程序中实现类似的功能。谢谢。
答案 0 :(得分:1)
您需要创建一个实例int
变量idx来跟踪您正在处理的图像,并为这些按钮分配两个IBAction
:
// This is for your fighter case
- (IBAction)presentPreviousImage:(id)sender {
idx --;
if (idx == 2) {
self.imageView.image = [UIImage imageNamed:@"1-3.jpg"];
} else if (idx == 1) {
self.imageView.image = [UIImage imageNamed:@"1-2.jpg"];
} else if (idx == 0) {
self.imageView.image = [UIImage imageNamed:@"1-1.jpg"];
idx = 2;
}
}
- (IBAction)presentNextImage:(id)sender {
idx ++;
if (idx == 0) {
self.imageView.image = [UIImage imageNamed:@"1-2.jpg"];
} else if (idx == 1) {
self.imageView.image = [UIImage imageNamed:@"1-3.jpg"];
} else if (idx == 2) {
self.imageView.image = [UIImage imageNamed:@"1-1.jpg"];
idx = 0;
}
}
答案 1 :(得分:1)
-(IBAction)rightClick{
if (imageArrayObj.count > 0) {
currentIndex++;
if (currentIndex > imageArrayObj.count - 1) {
currentIndex = 0;
}
imageViewObj.image = [imageArrayObj objectAtIndex:currentIndex];
}
}
它工作正常.....使用this和currentIndex是整数声明“int currentIndex;”并在视图中赋值,加载“currentIndex = 0;”