如何在iPhone上制作下拉列表?

时间:2011-08-30 07:26:43

标签: iphone

我想要一个给定的标签示例:Typemarital(可能的答案:已婚,单身,PACS,离婚等等)从预定义列表中选择并知道如何冻结字段上用户的答案而不是一个视图(不使用构建器界面)只是通过代码。 谢谢

4 个答案:

答案 0 :(得分:0)

其实非常简单。 单击标签创建一个视图,在其中创建一个表视图,您可以在其中显示所需的列表,只需单击单元格即

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

将所选单元格的文字放入标签并删除您的视图。

希望它有所帮助.....

答案 1 :(得分:0)

可以使用按钮和选择器视图进行。

1)点击按钮,您必须显示选择器视图,并且必须从选择器中选择所需的值。然后从选择器视图的inputAccessoryView开始,您可以在其中添加带有完成按钮的工具栏。

2)点击完成按钮后,您可以获取选择器的选定值并隐藏选择器。

3)然后您可以将所选值显示为UILabel。

希望这会对你有所帮助。

修改

这是一个非常有用的iPhone / iPad dropdownmenu教程:

http://kshitizghimire.com.np/dropdown-in-iphoneipad/

答案 2 :(得分:0)

你必须使用UITableView。

1)创建一个带标题的按钮。

2)点击按钮时,将显示tableView。

3)当选择了一行tableview时,tableview会隐藏,而按钮标题将在tableview中被选中。

答案 3 :(得分:0)

您可以使用UIActionSheet。在UIActionSheet中添加UIPickerView。

点击按钮试试这个:

category = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil];     category.actionSheetStyle = UIActionSheetStyleBlackTranslucent;

UIPickerView *categoryPicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0,50,  320, 120)];
categoryPicker.delegate = self;
categoryPicker.dataSource = self;
categoryPicker.showsSelectionIndicator = YES;
[categoryPicker selectRow:1 inComponent:0 animated:NO]; 
[category addSubview:categoryPicker];

UISegmentedControl * segmentedControlDone = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObject:@“Done”]];

segmentedControlDone.momentary = YES;
segmentedControlDone.frame = CGRectMake(260, 7, 50, 30);
segmentedControlDone.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControlDone.tintColor = [UIColor blackColor];

[segmentedControlDone addTarget:self action:@selector(actionPickerDone) forControlEvents:UIControlEventValueChanged];

    [category addSubview:segmentedControlDone];

//实现UIPicker的数据源方法