Ios iPhone:textViewDDIDBeginEdit:textview.tag始终为0

Ios iPhone:textViewDDIDBeginEdit:textview.tag始终为0,ios,uitextview,uitextviewdelegate,Ios,Uitextview,Uitextviewdelegate,在我的应用程序中,我编写了一个循环,将标记分配给我的文本视图: for(j = 0; j<9; j++) for(k = 0; k<9; k++) { UITextView*txtview = [[UITextView alloc]initWithFrame:CGRectMake(x,y,25,25)]; txtview.backgroundColor = [UIColor clearColor]; txtvie

在我的应用程序中,我编写了一个循环,将标记分配给我的文本视图:

for(j = 0; j<9; j++)
    for(k = 0; k<9; k++) {
        UITextView*txtview =
        [[UITextView alloc]initWithFrame:CGRectMake(x,y,25,25)];
        txtview.backgroundColor = [UIColor clearColor];
        txtview.textColor = [UIColor redColor];
        txtview.font = [UIFont fontWithName:@"TrebuchetMS-Bold" size:18];
        txtview.tag = 10*k + j;
        txtview.keyboardType = UIKeyboardTypeNumberPad;
        [self.view addSubview:txtview];
        [txtview sizeToFit];
        txtview.delegate = self;
        x = x+40;
        y = y+40;
        NSLog(@"%d",txtview.tag);
    }

对于(j=0;j除了添加UITapGestureRecognitor之外,您还可以为UITextView设置delgate

代码如下所示

txtview.delegate = self;
现在您可以收听委托方法


- (void)textViewDidBeginEditing:(UITextView *)textView
{
   NSLog(@"textView tag is %d",txtview.tag);
}

我认为你应该使用

    - (BOOL)textViewShouldBeginEditing:(UITextView *)textView
并将委托设置为
TextView
,因为我复制了您的代码并尝试了自己的操作。更改:

txtview.tag = 10*k + j;


你到底在哪里设置TextView的代理?handleTap:做什么?这段代码将在同一帧上添加多少TextView?你想添加10个UITextView吗?你实际上在这里添加了100个UITextView。对于缺少的部分和handleTap(这是我尝试使用的旧方法,现在没有用了)感到抱歉。我正在尝试添加81个UITextViews。您的代码在我这端正常工作。
txtview.tag = j*10 + k;