如何在UITableview
中获取数据,而不是点击键盘UITextfield
。在UITableview
中,如何进行多项数据选择
编辑: - 我有UITextfield
。在点击它时,tableview应该弹出数据而不是键盘。选择一行tableview时,应显示复选标记,并且应在UITextfield
中看到该数据。
答案 0 :(得分:4)
回答你的第一个问题 -
您的键盘将使用此代码隐藏。
-(BOOL)textField:(UITextField *)textField shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textField resignFirstResponder];
return NO;
}
return YES;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField{
[self.view endEditing:YES];
// load your tableView here.
// Everything must be custom.that is your table view is just like a popup.
}
回答你的第二个问题 -
现在的情况是你的桌面视图显示在屏幕上。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *selectedValue = [yourArray objectAtIndex:indexPath.row];
yourTextView.text = selectedValue;
yourTableView.hide = YES;
}
在选择任何行后,在yourTextView中显示该值。但之后你必须隐藏该tableView。试试这个。这可以帮到你。
答案 1 :(得分:2)
-(void)textViewDidBeginEditing:(UITextView *)textView
{
[self.view endEditing:YES]; // this will make key board hide
yourTableView.hide = NO; // here show tableview make sure tableview allocated out side and here you will be just showing.
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
yourTextView.text = yourArray[indexPath.row];
yourTableView.hide = YES;
}
答案 2 :(得分:0)
使用UITextField.inputView属性。