2012-06-05 2 views
0

Мне нужно реализовать сетку изображений, требующих, чтобы каждый сегмент переходил на другой контроллер представления/или Вид.Создание назначаемой сетки для выделения в xcode

Мои параметры:

мне нужно 260 сегментов: около 18px 18px х Каждый сегмент будет пронумерован (1-260) и имеют diffrent (фон) изображения Один сегмент должен быть выделен (ежедневный квадрат, как ical) Вы можете нажать любой сегмент, чтобы перейти к следующему контроллеру просмотра

Я просмотрел пользовательские TVCells/Buttons, но есть ли там дополнительные опции?

Спасибо

+0

Я также посмотрел на теги для всех 260 кнопок. Ежедневный фокус, который я выбрал, чтобы изменить фоновое изображение, используя: [(UIButton *) [self.view viewWithTag: dayCount] setBackgroundImage: [UIImage imageNamed: @ "image.png"] forState: UIControlStateNormal]; – RoshDamunki

ответ

0

В конце концов, я выбрал для:

  • Связывание 1stViewController к 2ndViewController в раскадровки и называя seque.identifier в атрибутах.
  • Создание сетки UIButtons в IB и присвоение им отдельных тегов в атрибутах (1-260 - не использовать 0, поскольку это значение по умолчанию).

Чтобы изменить кнопки BackgroundImage ежедневно я создал день встречное число и в viewDidLoad в 1stVC закодированы:

[(UIButton*)[self.view viewWithTag:dayCount] setBackgroundImage:[UIImage imageNamed:@"image_Day.png"] forState:UIControlStateNormal]; 

Как было несколько UIButtons, я решил, что их все перетаскиванием к IBAction в IB была слишком длинной задачей, поэтому я assinged их с помощью программно:

-(void) assignButtons{ 
[(UIButton*)[self.view viewWithTag:1] addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; 
[(UIButton*)[self.view viewWithTag:2] addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; 
} //etc for all 260 

Затем используется performSegueWithIdentifier: в методе:

-(IBAction) buttonClicked:(id)sender{ 

[self performSegueWithIdentifier:@"mySegue" sender:self]; 
} 
Смежные вопросы