您的位置:首页 > 移动开发 > IOS开发

图片翻转效果的实现

2015-08-21 16:06 429 查看
#pragma mark - Private Method
- (void)loadListView

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

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

    _listView.backgroundColor = [UIColor
colorWithPatternImage:[UIImage
imageNamed:@"bg_main"]];

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

    _listView.dataSource =
self;

    _listView.delegate   =
self;

    

    [self.view
addSubview:_listView];

    

}//
加载表视图

- (void)loadPosterView
{

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

//    _poserView.backgroundColor = [UIColor purpleColor];

//    [self.view addSubview:_poserView];

//

    

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

  

    [self.view
addSubview:_poserView];

    

}//
加载海报视图

- (void)loadNavigationItem
{

    //
初始化基视图

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

    itemBaseView.userInteractionEnabled =
YES;
    itemBaseView.image = [UIImage
imageNamed:@"exchange_bg_home"];

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

    UITapGestureRecognizer *tap =
4000
[[UITapGestureRecognizer
alloc] initWithTarget:self
action:@selector(changeBrowseMode)];
    [itemBaseView
addGestureRecognizer:tap];

    

    //
添加子视图,海报logo
   
UIImageView *posterItem = [[UIImageView
alloc] initWithFrame:CGRectMake(itemBaseView.width/2-22.0/2, itemBaseView.height/2-15/2.0,
23, 14)];
    posterItem.tag =
kPosterItemTag;
    posterItem.hidden =
YES;
    posterItem.image = [UIImage
imageNamed:@"poster_home"];

    //
添加子视图,列表logo
   
UIImageView *listItem = [[UIImageView
alloc] initWithFrame:CGRectMake(itemBaseView.width/2-23.0/2, itemBaseView.height/2-7,
23, 14)];

    listItem.image = [UIImage
imageNamed:@"list_home"];
    listItem.tag =
kListItemTag;

    //
添加子视图
    [itemBaseView
addSubview:posterItem];
    [itemBaseView
addSubview:listItem];

    

    //
添加rightItem

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

    

    self.navigationItem.rightBarButtonItem = rightItem ;

}//
添加NavigationItem

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

    [UIView
beginAnimations:nil
context:NULL];

    [UIView
setAnimationDuration:0.5];

    [baseView exchangeSubviewAtIndex:0
withSubviewAtIndex:1];

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

    [UIView
commitAnimations];

}//
翻转过渡动画效果

#pragma mark - Actions Method
- (void)changeBrowseMode
{

    //
获得itembaseView

    UIView *baseItemView = [self.navigationItem.rightBarButtonItem
customView];
   
UIView *posterItem = [baseItemView
viewWithTag:kPosterItemTag];
   
UIView *listItem   = [baseItemView
viewWithTag:kListItemTag];

    

    [self
animationBaseView:self.view
flag:posterItem.hidden];
    [self
animationBaseView:baseItemView
flag:posterItem.hidden];

    
   
if (posterItem.hidden) {
        posterItem.hidden =
NO;
        listItem.hidden   =
YES;

        
    }
   
else {
        posterItem.hidden =
YES;
        listItem.hidden   =
NO;
    }

}//
改变浏览方式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息