Форум программистов, компьютерный форум CyberForum.ru

UIPageViewController + скроллинг вьюконтроллера - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Массив int8_t или NSData? http://www.cyberforum.ru/objective-c/thread1265549.html
Кто что чаще используете? масив int8_t или NSData, вопрос не в том что правильно использовать))) а что чаще всего используете вы ?
Objective-C Как наполнять UITableView ячейками разной высоты? у меня в приложении есть класс DomainNewsTableViewController : UITableViewController в методе viewDidLoad я загружаю с сайта данные в массив объектов NSMutableArray, со свойствами типа NSString - это заголовки и даты новостей в методе tableView:cellForRowAtIndexPath: я беру из массива объектов соответствующий индексу объект и создаю UILabel, который добавляю в ячейку ячейки получаются... http://www.cyberforum.ru/objective-c/thread1265491.html
Objective-C Не могу понять терминологию
Не очень могу понять обозначение "свойство", @property, "методы доступа свойств" и тому подобное. Изучаю программирование по книжке от O'RALLY "Программируем для iPhone и iPad". Как себе можно представить это свойство? Между тем, тут хочется задать еще один вопрос. Это нормально, что когда я читаю книгу, у меня возникают проблемы с пониманием терминологии ( действие, операции, событие ), поэтому...
Objective-C Объясните про агрегацию (она же композиция, она же включение)
Добрый день! В одной очень умной книжке на англ языке встретился с понятием Object Composition. Нашел варианты перевода как агрегация, включение и композиция. Что это такое мне не совсем понятно (кроме того что это альтернатива наследования) по этому прошу дать объяснение: 1. Что это, собственно, за зверь такой, 2. Как он реализуется в Obj-C, 3. В каких случаях его лучше применять, 4....
Objective-C Зачем нужно свойство @property (assign) http://www.cyberforum.ru/objective-c/thread1261682.html
Для чего нужно свойство property (assign)? Как мне обратиться к полю класса, если оно под @property? Что будет, если убрать его? Я так понимаю это как-то связано с геттерами и сеттерами. При создании cocoa приложения столкнулся с тем, что поле NSWindow как раз с этим свойством, и поэтому я не могу обращаться к window из другого класса. Поймите правильно, мне часто приходится обращаться к этому...
Objective-C NSAttributedString - Как вставить HTML? NSString *string = @"<p>ewrtgh</p><p>werg</p><p>werg</p>"; NSData *textData = ; NSDictionary *options = @{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: @(NSUTF8StringEncoding) }; NSError *error = nil; NSAttributedString... подробнее

Показать сообщение отдельно
lowlol
2 / 2 / 2
Регистрация: 02.12.2012
Сообщений: 102
06.10.2014, 18:49  [ТС]     UIPageViewController + скроллинг вьюконтроллера
zulkis, у меня есть класс ChildViewController и его xib-файл. В нем (в xib) накиданы UIImageView и UITextView.
Далее, в другом вьюконтролере, я создаю PageViewController и для каждой "страницы" создаю новый экземпляр класса ChildViewController:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
- (void)viewDidLoad
{
    [super viewDidLoad];
    //setting PVC
    mainPVC = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll
                                              navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal
                                                            options:nil];
    mainPVC.dataSource = self;
    mainPVC.delegate = self;
    [[mainPVC view] setFrame:[[self view] bounds]];
    
    ChildViewController *initialViewController = [self viewControllerAtIndex:0];
    NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];
    
    
    [mainPVC setViewControllers:viewControllers
                      direction:UIPageViewControllerNavigationDirectionForward
                       animated:NO
                     completion:nil];
    
    /*****************/
    //TO DO: WHY I NEED THIS LINE???
    [self addChildViewController:mainPVC];
    /*****************/
    [self.view addSubview:mainPVC.view];
    /*****************/
    //TO DO:AND WHY I NEED THIS?
    [mainPVC didMoveToParentViewController:self];
    /*****************/
    //~
    
    //remove gap, caused by page control dots
    UIPageControl *thisControl = nil;
    for (int i=0; i<[viewControllers count]; i++) {
        if ([[viewControllers objectAtIndex:i] isKindOfClass:[UIPageControl class]]) {
            thisControl = (UIPageControl *)[viewControllers objectAtIndex:i];
        }
    }
    thisControl.hidden = true;
    mainPVC.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height+40);
    //~
    
    
 
}
 
- (ChildViewController *)viewControllerAtIndex:(NSUInteger)index {
    
    ChildViewController *childViewController = [[ChildViewController alloc] init];
    childViewController.index = index;
    
    return childViewController;
    
}
на стэковерфлоу есть пара открытых вопросов на эту тему, но ответов к ним нет
Кликните здесь для просмотра всего текста
http://stackoverflow.com/questions/20449225/vertical-uiscrollview-inside-horizontal-uipageviewcontroller-not-scrolling


Добавлено через 1 час 35 минут
zulkis, хм
Я ставил размеры scrollview в xib и это не сработало.
Но когда прописал это явно в коде, то заработало.
Objective-C
1
2
CGRect screenRect = [[UIScreen mainScreen] bounds];
[self.mainScrollView setContentSize:CGSizeMake(screenRect.size.width, 1100)];
почему так?
AutoLayout включен, если это важно
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru