Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
200 views
in Technique[技术] by (71.8m points)

ios - How to solve this error "this class is not key value coding compliant for the key"?

I have created UITableView and in UITableview every row have more than one UITextField. How to get each UITextField values. Below is my sample code.

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {    
    int  j= 285;        
            for (int i=0; i<7; i++) { 
    NSString *txtIndvalue =[NSString stringWithFormat:@"Index%d",i];           
                UITextField *txtvalue =  [[UITextField alloc] initWithFrame:CGRectMake(j,5.0f,25.0f,20.0f)];
                [txtvalue setBorderStyle:UITextBorderStyleLine];
    [txtvalue setTag:indexpath.row]
    [txtvalue setvalue:txtIndvalue forkey:@"test"]
                [cell addSubview:txtvalue];
                j = j + 35;
            }
    }

error: Terminating app due to uncaught exception 'NSUnknownkeyException' ,reason :'[<UItextField .>' setValue:forUndefindekey:] this class is not key value codeing compliant for the key. Please help me.
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
[txtvalue setvalue:txtIndvalue forkey:@"test"]

This line causing the crash. setValueForKey is not a property/method of UITextField. If you want to set text on textfield , you should use

txt value.text = @"some text".

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...