我已经以编程方式创建了UITextView
,textview是根据需要创建的,但是当我尝试使用标记应用程序崩溃为textview设置值时。
我可以毫无问题地设置其他参数,例如setUserInteractionEnabled
。
按照它的代码..
创建textview
UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(0,0,100,200)];
textView.font = [UIFont systemFontOfSize:30];
//textView.font = [UIFont boldSystemFontOfSize:12];
textView.backgroundColor = [UIColor grayColor];
textView.tag=i;
[textView setTextAlignment:NSTextAlignmentCenter];
textView.text=[NSString stringWithFormat:@"%d",i];
textView.inputView= [LNNumberpad defaultLNNumberpad];
textView.editable = YES;
[textView setDelegate:self];
[self.view addSubview:textView];
使用标记..更改textview中的值。
UITextView *txtviewfound = (UITextView *)[self.view viewWithTag:j];
[txtviewfound setText:@"some text"];
[txtviewfound setUserInteractionEnabled:FALSE];
当我评论settext时它工作正常。
如果我遗失任何内容,请告诉我。
提前致谢
答案 0 :(得分:1)
在进行类型转换之前,您需要检查天气子视图属于哪个 textView与否,因为默认情况下每个对象都有0作为标记 如果您在视图中有任何其他对象,则它会创建 问题
if([[self.view viewWithTag:i]isKindOfClass:[UITextView class]])
{
UITextView *txtviewfound = (UITextView *)[self.view viewWithTag:j];
[txtviewfound setText:@"some text"];
[txtviewfound setUserInteractionEnabled:NO];
}
答案 1 :(得分:0)
崩溃日志说的是什么?如果绑定可能的索引? 另外,为了确保 - 不要设置标签的数字真的很低,比如1到5,它们可能很少但仍然已被苹果公司采用。