2013-02-27 3 views
5

В моем проекте я использую раскадровку с 2 вкладками. То, что я хочу создать, находится на первой вкладке, когда вы проведите по экрану влево, появится другой макет с текстом, и когда вы снова проведите по экрану, другой макет покажет другую информацию (так что скажем, я хочу 10 разных шаблонов макета, но мне нужно быть . способен изменять текст из шаблонов макета Так что это мой раскадровка:Пролистайте различные экраны (просмотры) с помощью раскадровки

http://i52.tinypic.com/28at3yh.png

и в «Первом View» Мне нужно, чтобы быть в состоянии проведите пальцем влево и показать макет с текстом, проведите пальцем влево снова и покажите (например) один и тот же макет с другим текстом, проведите по экрану влево, покажите еще один макет с текстом и т. д. Таким образом, в общей сложности есть 10 шаблонов макета, где мне нужно изменить текст в коде.

Таким образом, в основном я нацелен на то же, что и окно запуска на iPhone/iPad, где вы можете прокручивать между экранами, на которых находятся значки приложений. Как я могу добиться этого с помощью той же анимации?

ответ

0

То, что вы ищете, называется UIPageControl. Ссылка на класс можно найти here и действительно хороший учебник можно найти here.

Если вы хотите более причудливый UIPageControl с более настраиваемыми параметрами, я предлагаю вам попробовать любой из these. (The SMPageControl это один из моих личных фаворитов)

правка из-за комментарии:

Here является ссылкой на проект из приведенного выше руководства.

В CustomPagerViewController он называет

[self addChildViewController:[self.storyboard instantiateViewControllerWithIdentifier:@"View1"]]; 

, которая дает эквивалентный результат как

UIViewController *aViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"View1"]; 
[self addChildViewController:aViewController]; 

Теперь, если вы хотите добавить несколько ViewControllers вы могли бы сделать петлю следующим образом

for(int i = 0; i<yourNumberOfViewControllers; i++) { 
    YourViewControllerClass *aViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"YourIdentifier"]; 
    [aViewController setSomeProperty:someValue]; 
    [self addChildViewController:aViewController]; 
} 

Надеюсь, это поможет!

+0

Я видел этот учебник, но проблема в том, что он создал 3 экрана в раскадровке, но мне нужно иметь, например, 10 макетов и повторно использовать их с другим контентом на нем, чтобы я мог прокручивать, возможно, 50 раз ... – 2013-02-27 21:40:55

+0

Так что проблема в том, что я не могу сделать все экраны в раскадровке, потому что я разбираю XML и зависим от этого XML, мне нужно сделать представления, и я не знаю, сколько может быть 5, может быть, 10 .. . – 2013-02-27 21:43:51

+0

Что такое YourViewControllerClass? Вы имеете в виду FirstViewController? Я использую 2 контроллера вида, как вы видите на моем изображении, класс FirstViewController, который связан с первым представлением, и SecondViewController, который связан со вторым. И нужно ли мне затем вводить этот код в FirstViewController? Я немного смущен – 2013-02-27 22:03:50