我在其中一个UITableView行中有一个UITextField子视图。当我点击一行(UITextField框架之外)时,我希望UITextField变得可编辑(即显示数字小键盘),就像我在UITextField框架内轻敲一样。
我已经看到一些类似的问题,建议使用becomeFirstResponder,但这对我不起作用。
我该怎么做?我应该以某种方式将UITextField框架之外的触摸事件转发到UITextField吗?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self selectSection: indexPath.section];
switch( indexPath.section )
{
case SECTION_RATE:
currentTextField = editRate;
[editRate becomeFirstResponder];
break;
case SECTION_UNITS:
currentTextField = editUnits;
[editUnits becomeFirstResponder];
break;
default:
break;
}
}
答案 0 :(得分:1)
在didSelectRowAtIndexPath中检查索引路径和
tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
if(indexpath.row == 0)
{
[txtField1 becomeFirstResponder];
//adjust table scroll for keyboard
}
else if(indexpath.row == 1)
{
[txtField2 becomeFirstResponder];
//adjust table scroll for keyboard
}