图片翻转效果的实现

来源:互联网 发布:qq飞车鸿黎耀世数据 编辑:程序博客网 时间:2024/05/16 10:06

#pragma mark - Private Method

- (void)loadListView

{    //状态栏20导航栏44 tabar49

    _listView = [[UITableViewalloc] initWithFrame:CGRectMake(0, 0,kDeviceWidth,kDeviceHeight-20-44-49)style:UITableViewStylePlain];

    _listView.backgroundColor = [UIColorcolorWithPatternImage:[UIImageimageNamed:@"bg_main"]];

    _listView.indicatorStyle =UIScrollViewIndicatorStyleWhite;//默认黑色风格

    _listView.dataSource =self;

    _listView.delegate   =self;

    

    [self.viewaddSubview:_listView];

    


}//加载表视图


- (void)loadPosterView

{

//    _poserView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kDeviceWidth, kDeviceHeight-20-44-49)];

//    _poserView.backgroundColor = [UIColor purpleColor];

//    [self.view addSubview:_poserView];

//

    

    _poserView = [[PosterViewalloc] initWithFrame:CGRectMake(0, 0,kDeviceWidth,kDeviceHeight-20-44-49)];

  

    [self.viewaddSubview:_poserView];

    

}//加载海报视图


- (void)loadNavigationItem

{

    // 初始化基视图

    UIImageView *itemBaseView = [[UIImageViewalloc] initWithFrame:CGRectMake(0, 0, 40, 25)];

    itemBaseView.userInteractionEnabled =YES;

    itemBaseView.image = [UIImageimageNamed:@"exchange_bg_home"];

    //给基视图添加单击事件

    UITapGestureRecognizer *tap = [[UITapGestureRecognizeralloc] initWithTarget:selfaction:@selector(changeBrowseMode)];

    [itemBaseViewaddGestureRecognizer:tap];

    

    // 添加子视图,海报logo

   UIImageView *posterItem = [[UIImageViewalloc] initWithFrame:CGRectMake(itemBaseView.width/2-22.0/2, itemBaseView.height/2-15/2.0, 23, 14)];

    posterItem.tag =kPosterItemTag;

    posterItem.hidden =YES;

    posterItem.image = [UIImageimageNamed:@"poster_home"];

    // 添加子视图,列表logo

   UIImageView *listItem = [[UIImageViewalloc] initWithFrame:CGRectMake(itemBaseView.width/2-23.0/2, itemBaseView.height/2-7, 23, 14)];

    listItem.image = [UIImageimageNamed:@"list_home"];

    listItem.tag =kListItemTag;

    // 添加子视图

    [itemBaseViewaddSubview:posterItem];

    [itemBaseViewaddSubview:listItem];

    

    // 添加rightItem

    UIBarButtonItem *rightItem = [[UIBarButtonItemalloc] initWithCustomView:itemBaseView];

    

    self.navigationItem.rightBarButtonItem = rightItem ;

}// 添加NavigationItem




- (void)animationBaseView:(UIView *)baseView flag:(BOOL)flag

{

    [UIView beginAnimations:nilcontext:NULL];

    [UIView setAnimationDuration:0.5];

    [baseView exchangeSubviewAtIndex:0withSubviewAtIndex:1];

    [UIView setAnimationTransition:flag ? UIViewAnimationTransitionFlipFromLeft :UIViewAnimationTransitionFlipFromRight forView:baseView cache:YES];

    [UIView commitAnimations];

}//翻转过渡动画效果


#pragma mark - Actions Method

- (void)changeBrowseMode

{

    // 获得itembaseView

    UIView *baseItemView = [self.navigationItem.rightBarButtonItemcustomView];

   UIView *posterItem = [baseItemView viewWithTag:kPosterItemTag];

   UIView *listItem   = [baseItemView viewWithTag:kListItemTag];

    

    [selfanimationBaseView:self.viewflag:posterItem.hidden];

    [selfanimationBaseView:baseItemView flag:posterItem.hidden];

    

   if (posterItem.hidden) {

        posterItem.hidden =NO;

        listItem.hidden   =YES;

        

    }

   else {

        posterItem.hidden =YES;

        listItem.hidden   =NO;

    }

}//改变浏览方式


0 0