2013-05-16 2 views
0

Я смотрел абсолютно везде часами и не могу найти решение, которое работает на меня. Все, что я пытаюсь сделать, это сделать мое приложение что-то сделать, когда позиция содержимого в uiscrollview находится выше определенной позиции и ниже другой позиции. Я надеюсь, что в этом есть смысл. Вот код, я думал, что будет работать:Как выполнить действие «если смещение содержимого больше ...»

- (void)viewDidLoad 
{ 
    if (self.scrollView4.contentOffset.y >= 100 && self.scrollView4.contentOffset.y <=  200) 
    { 
     [self.scrollView4 setContentOffset:CGPointMake(100,0)]; 
    } 
} 

Любая помощь будет принята с благодарностью!

EDIT: Если забыл упомянуть, что если я делаю оператор «if», чтобы сказать, что если contentOffset равен содержанию contentOffset, с которого он начинается, действие выполняется. Казалось бы, contentOffset остается на том значении, которое было дано при загрузке приложения. Я должен упомянуть, что ранее в приложении я установил значение contentOffset в значение, но я не знаю, влияет ли это на что-либо.

ответ

0

Это работает отлично для меня. Если это не работает для вас, я хотел бы предложить, что ваша проблема заключается в другом

[self.scrollview4 setDelegate:self]; 
- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    if (scrollView.contentOffset.y >= 100 && scrollView.contentOffset.y <= 200) 
    { 
     NSLog(@"Caught"); 
    } 
} 
+0

Спасибо. Это был [self.scrollview4 setDelegate: self]; кто это сделал. Поскольку я новичок в программировании, не могли бы вы кратко рассказать, почему это не сработало, когда мне не хватало «setDelegate»? –

+0

Подумайте, как кто-то попросит компьютер или скажет, когда он собирается что-то сделать, поэтому вы просто говорите своему прокрутку, скажите мне, прежде чем прокручивать, после прокрутки, если вы собираетесь прокручивать и т. Д. Так что ваш scrollview хотел отправить сообщения, но вы никогда не говорили, кому их отправлять. Они являются важной частью iOS, поэтому вы можете прочитать о них больше здесь. Https://developer.apple.com/library/ios/#documentation/General/Conceptual/DevPedia-CocoaCore/Delegation.html – zimmryan

+0

Спасибо, теперь имеет больше смысла и я прочитаю эту документацию. –

0

UIScrollViewDelegate имеет метод scrollViewDidScroll (который выполняется всякий раз, когда связанные свитки прокрутки). Вы можете реализовать свою логику там.

+0

Я попытался сделать это, но это не имеет никакого значения, я понимаю, почему это лучше поставить его там, хотя –