У меня есть mapView, размер которого (320, 182). Как только нажимается UIBarButtonItem
, я хотел бы показать, что этот mapView скользит вниз от вершины экрана. Для этого я написал такой код.Показать половину экрана экрана, который скользит вниз сверху
UIBarButtonItem *mapButton = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"map_1.png"]
style:UIBarButtonItemStylePlain
target:self
action:@selector(showMap:)
];
self.navigationItem.rightBarButtonItem = mapButton;
-(void)showMap:(id)sender{
self._mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0,-182,320,182)];
[self.scrollView addSubview:self._mapView];
//show view
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationBeginsFromCurrentState:YES];
[UIView setAnimationDuration:1.0];
CGRect rect = [self._mapView frame];
rect.origin.y = 0;
[self._mapView setFrame:rect];
[UIView commitAnimations];
}
Это покажет вид карты, который скользит вниз от верхней части экрана. Однако, как мне сделать mapView уволить, когда во второй раз нажали UIBarButtonItem
? Более того, я также хотел бы отклонить mapView, когда выходил за пределы mapView.
Это сработало! Большое вам спасибо за помощь. – kenken