是否有一种简单的方法可以为UITextField创建下拉菜单,以便用户可以键入自定义条目或从列表中选择一个?
答案 0 :(得分:6)
对于下拉菜单,您可以实现UITableView。您可以使用列表填充此UItableview。
只需在ViewController的ViewDidLoad方法中声明它,然后就可以稍后显示或隐藏。
TableView = [[UITableView alloc]initWithFrame:CGRectMake(x,x,x,x) ];
TableView.delegate = self;
TableView.dataSource = self;
当用户点击UITextField时,将其添加到主视图。
[self.view addSubView:TableView];
如果您希望用户从给定列表中选择,则更好的选项是UIButton而不是UITextField。
编辑:我没有注意到它与上述答案相同。答案 1 :(得分:3)
除uitextfield外,您还可以显示向下箭头按钮。并根据需要添加宽度与textfield和height相同的tableview,并将其正好放在文本字段下方并保持隐藏状态。单击向下箭头按钮使tableView.hidden = NO,使其显示为下拉列表,并再次在tableview的didSelectRowAtIndexPath函数中使其隐藏,并将所选行值放在textfield中。就是这样。
答案 2 :(得分:3)
您所说的是正确的,我们也可以使用textfield委托方法在表格视图中填充结果,而不是使用向下箭头。当用户在文本字段中输入一些文本时,将调用文本字段委托方法(didChangeText Delegate Method),在该方法中可以更新表视图。无需在文本字段中添加下拉箭头按钮。
答案 3 :(得分:0)
这样做:
当用户点击UITextField
时,将其添加到主视图。
[self.view addSubView:TableView];