2010-09-03 2 views
0

У меня есть UIScrollView с встроенным в него UIView. Он прокручивается снизу на кнопке Button, кнопка находится в другом представлении. Когда он прокручивается, он частично покрывает вызывающий вид, на котором находится кнопка. Теперь у меня есть еще одна кнопка, которая должна проталкивать этот вид прокрутки вниз. Эта кнопка, похоже, не работает. Я опубликовал весь код. Пожалуйста помоги!!UIScrollView «назад к исходному размеру»

-(IBAction)unscrollClicked:(id)sender 
{ 
//[viewController.view removeFromSuperview]; 
[UIView beginAnimations:@"back to original size" context:nil]; 

scrollView.contentSize=viewController.view.bounds.size; 


//scrollView.contentSize=viewController.view.bounds.size; 
[UIView commitAnimations]; 

} 

-(IBAction)scrollClicked:(id)sender 

{ 

//viewController.view.backgroundColor=[UIColor orangeColor]; 
viewController.view.frame=CGRectMake(0, 410, 320, 460); 

//[self.view addSubview:viewController.view]; 

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0,40, 320, 400)];//(0,0,320,160) 
scrollView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth; 

//[MyView setFrame:CGRectMake (0, 0, 320, 170)]; 
viewController.view.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth; 
scrollView.contentSize = viewController.view.bounds.size; 


scrollView.bounces = YES; 
scrollView.bouncesZoom = YES; 
scrollView.scrollEnabled = YES; 
scrollView.minimumZoomScale = 0.5; 
scrollView.maximumZoomScale = 5.0; 
scrollView.delegate = self; 

[scrollView addSubview: viewController.view]; 


[self.view addSubview:scrollView]; 
[self moveScrollView:scrollView]; 
} 

-(void) moveScrollView:(UIScrollView *)scrollView 

{ 

CGFloat scrollamount=400; 



[scrollView setContentOffset:CGPointMake(0,scrollamount) animated:YES]; 
} 

ответ

0

Попробуйте использовать метод zoomToRect.

+0

ничего не происходит при этом – 2010-09-06 05:44:43

+0

Привет всем, Чтобы добавить к моему вопросу: Я пытаюсь реплицировать контактный вид приложения для контактов iPhone. – 2010-09-06 05:46:18

0

Я думаю, вы должны изменить свой метод перемещения. Как это, он показывает содержание в виде фиксированного происхождения (высота 400), но после того, как один invokation он не должен ничего делать, так как contentOffset уже на 400. Попробуйте это:

-(void) moveScrollView:(UIScrollView *)scrollView upwards:(BOOL)up { 
    CGFloat scrollamount=400; 

if (up) 
    [scrollView setContentOffset:CGPointMake(0,scrollamount) animated:YES]; 
else 
    [scrollView setContentOffset:CGPointMake(0,0) animated:YES]; 
} 

и вызывать так:

[self moveScrollView:scrollView upwards:YES]; // or NO for moving down 
Смежные вопросы