Итак, новичок в iPhone dev и обучение постоянно.Я знаю, чего хочу, но не знаю, с чего начать.До этого проекта я имел дело только с приложениями tableView, поэтому мне очень не хватает практических знаний о imageView и пользовательских действиях!
Я хочу загрузить UIImageView с изображением (используя массив, заполненный fetchedResultsController какизображения будут храниться в базе данных CoreData).
Я хочу UIButton с действием «next» и UIButton с действием «previous», которые будут управлять отображаемым изображением ранее упомянутого imageViews.
Пока что у меня есть отображение БД и дизайн интерфейса, ноЯ не могу найти ответ на эти вопросы (я уверен, что это будет довольно просто для тех, кто знает).
Буду очень признателен за любой совет или пример кода.
DetartrateD
@ фрагмент кода shawnwall снизу ...
-(IBAction)nextImage {
index++;
int imageCount=31;
if (index<=imageCount) {
NSString* imageName=[NSString stringWithFormat:@"img%i.jpg", index];
[picture setImage: [UIImage imageNamed: imageName]];
}
}
Изменяемый массив, добавленный в viewDidLoad:
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Images" inManagedObjectContext:managedObjectContext];
[request setEntity:entity];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"topImage" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[request setSortDescriptors:sortDescriptors];
[sortDescriptor release];
[sortDescriptors release];
NSError *error = nil;
NSMutableArray *mutableFetchResultsT = [[managedObjectContext executeFetchRequest:request error:&error]mutableCopy];
if (mutableFetchResultsT == nil) {
}
[self setTopImageArray:mutableFetchResultsT];
NSLog(@"%i" , [topImageArray count]);
Изображение добавляется вмассив здесь:
Images *imageS = (Images *)[NSEntityDescription insertNewObjectForEntityForName:@"Images" inManagedObjectContext:managedObjectContext];
imageS.topImage = selectedImage;
[topImageArray insertObject:imageS.topImage atIndex:0];
NSLog(@"%i" , [topImageArray count]);
... ...
Тот же метод, но после создания эскиза я вызываю:
[self updateTopIV];
Что:
-(void)updateTopIV
{
topIV.image = [topImageArray objectAtIndex:0];
}
У меня есть 2 кнопки действий (следующая / предыдущая):
- (IBAction)nextTouch
{
[self showPhoto:1];
}
- (IBAction)previousTouch
{
[self showPhoto:-1];
}
- (void)showPhoto:(NSInteger)numberToAdd
{
topIV.image = [topImageArray objectAtIndex:currentPhotoIndex + numberToAdd];
}