如何在iPhone中实现下拉框?

时间:2010-10-08 10:54:58

标签: iphone objective-c

我有一个视图,我有一个按钮。我需要在点击该按钮时有一个下拉框。如何实现下拉框? 下拉框shuold有一个表视图。当我在表视图中单击行时(在下拉框打开后)我想得到的文本将出现在我有按钮的视图上单击的行单元格上。怎么做?

4 个答案:

答案 0 :(得分:3)

这是一个适用于我的解决方法。

-(IBAction)showDropDownList:(id)sender
{

tableView = [[UITableView alloc] initWithFrame:CGRectMake(7, 135, 200, 0) style:UITableViewStyleGrouped];
        tableView.delegate = self;
        tableView.dataSource = self;

    if (tableState == TableViewStateClosed) {  //enum for identifying tableview state

        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:0.3];
        CGRect viewRect = self.tableView.frame;
        viewRect.size.height += 150;

        [self.tableView setFrame:CGRectMake(7, 135, 200, viewRect.size.height)];

        [UIView commitAnimations];
        [self.view addSubview:tableView];
        tableState = TableViewStateOpen;
    }
    else if (tableState == TableViewStateOpen) {

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

        [self.inboxTableView setFrame:CGRectMake(7, 135, 200, 0)];

        [UIView commitAnimations];

        tableState = TableViewStateClosed;
    }
}

答案 1 :(得分:2)

有两种方法可以实现这个目标

  1. 通过使用tableview,您可以在下拉菜单中找到包含要包含的项目列表的tableview。然后在UITableView的委托方法中,您可以对该特定行进行复选标记,然后在项目的其他位置使用该特定行的值。

  2. 您可以使用Pickerview来实现下拉列表。

  3. 在两个PickerView中是可取的。

答案 2 :(得分:0)

有两种方法可以在ur tableview上添加一个视图,然后在其上放一个tableview或show按钮,这样它就可以看到下拉,在任何单元格上选择的按钮选择的表行上调用该方法< / p>

答案 3 :(得分:0)

这是另一种选择。如果您考虑一下,操作表基本上是一个下拉列表。如果你不断向UIActionSheet添加按钮,它最终会变成一个表格。所以只需要一个UIButton(或某个事件)触发UIActionSheet。

尝试将7个或更多按钮添加到UIActionSheet并观察它变成列表。它方便。

enter image description here