Iphone Dev - 按下按钮时下拉按钮列表

时间:2010-12-30 14:00:56

标签: objective-c cocoa-touch ios4 core-animation uibutton

我需要实现一个按钮(让我们说按下之前箭头向下的图片),按下时,会打开一个下拉列表,我将动态设置其他按钮。 下拉需要使用某种动画一次显示一个按钮。

是否有首选方式。 (从未使用过动画) 类似的源代码会有很大的帮助。

由于

1 个答案:

答案 0 :(得分:0)

我做了类似的事情,我有一个带导航栏的表格视图。该栏有一个显示/隐藏过滤器的按钮,可以从顶部向下设置动画。我使用的代码是:

  CGFloat filterViewHeight = kExtendedFilterViewHeight;
  if(![self includeSecondaryFilter])
   filterViewHeight = kDefaultFilterViewHeight;

  if(!allButton.selected && [self includeSecondaryFilter])
   filterViewHeight -= kSecondaryFilterHeight;

  filtersView.frame = CGRectMake(0.0, -filterViewHeight, 320.0, filterViewHeight);
  [self.view addSubview:filtersView];

  CGRect tableViewFrame = itemTableView.frame;
  CGRect filtersViewFrame = filtersView.frame;

  [UIView beginAnimations:nil context:NULL];
  [UIView setAnimationDuration:0.3];
  [UIView setAnimationDelegate:self];

  tableViewFrame.origin.y = filterViewHeight;
  tableViewFrame.size.height -= filterViewHeight;
  itemTableView.frame = tableViewFrame;

  filtersViewFrame.origin.y = 0.0;
  filtersView.frame = filtersViewFrame;

  [UIView commitAnimations];

希望这有帮助!