2014-02-20 24 views

回答

3

你需要像this video這樣的東西嗎?

  • 下面是一個簡單

    enter image description here

  • 下面是其他

    enter image description here

這些,這裏是我的方法來實現這一點:

  • 創建工具欄。
  • 創建BottomView(應該是背後的工具欄。
  • 工具欄上的
  • 添加SwipteGestures與向上&向下的方向在目標方法,只是做動畫動起來&了下來。

這裏我寫了短短几分鐘前,可以幫助Y中的代碼。

// add the variables 
    UIToolbar *myToolBar; 
    UIView *hiddenView; 
    BOOL movedUP; 


    -(void)addToolBar{ 
     [self addBottomMostHiddenView]; 
     UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
     [self.navigationController.toolbar setBarStyle:UIBarStyleBlackOpaque]; 
     UIBarButtonItem *one = [[UIBarButtonItem alloc] initWithTitle:@"One Item" style:UIBarButtonItemStylePlain target:self  action:nil]; 
     UIBarButtonItem *drag = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"icon-drag-64.png"] style:UIBarButtonItemStylePlain target:self action:nil]; 
    drag.enabled = NO; 
     UIBarButtonItem *two = [[UIBarButtonItem alloc] initWithTitle:@"Two Item" style:UIBarButtonItemStylePlain target:self  action:nil]; 
     NSArray *toolbarItems = [NSArray arrayWithObjects:one,spaceItem, drag, spaceItem , two, nil]; 

     myToolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 430, self.view.frame.size.width, 80)]; 
     myToolBar.tintColor = [UIColor whiteColor]; 
     myToolBar.barTintColor = [UIColor colorWithRed:53.0/255.0 green:70.0/255.0 blue:103.00/255.00 alpha:1]; 
     [self.view addSubview:myToolBar]; 
     [myToolBar setItems:toolbarItems animated:YES]; 

     UISwipeGestureRecognizer *upGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(dragMe:)]; 
    upGesture.direction = UISwipeGestureRecognizerDirectionUp; 
     [myToolBar addGestureRecognizer:upGesture]; 

     UISwipeGestureRecognizer *downGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(dragMe:)]; 
    downGesture.direction = UISwipeGestureRecognizerDirectionDown; 
     [myToolBar addGestureRecognizer:downGesture]; 

    } 


    -(void)addBottomMostHiddenView{ 
     hiddenView = [[UIView alloc]initWithFrame:CGRectMake(0, 510, self.view.frame.size.width, 40)]; 
     UIImageView *image = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"iconProgress.png"]]; 
     [hiddenView addSubview:image]; 
     [hiddenView setBackgroundColor:[UIColor colorWithWhite:0.2 alpha:0.8]]; 
     [self.view addSubview:hiddenView]; 
    } 

    -(void)dragMe:(UISwipeGestureRecognizer *)gesture { 
     [UIView animateWithDuration:0.5 animations:^{ 
      if(gesture.direction == UISwipeGestureRecognizerDirectionDown) { 
       if(movedUP) { 
        myToolBar.frame = CGRectMake(0, 430, self.view.frame.size.width, 80); 
        hiddenView.frame = CGRectMake(0, 510, self.view.frame.size.width, 80); 
        movedUP = NO; 
       } 
     }else if(gesture.direction == UISwipeGestureRecognizerDirectionUp) { 
      if(!movedUP) { 
       myToolBar.frame = CGRectMake(0, 390, self.view.frame.size.width, 80); 
       hiddenView.frame = CGRectMake(0, 470, self.view.frame.size.width, 80); 
       movedUP = YES; 
      } 
     } 
    }]; 

} 

希望OU。

+0

請以計算方式設置框架,而不是硬編碼方式。我只是爲了給你提供線索。 –

相關問題