我正在使用UIview并添加了tableview。api发送数据以显示tableiveiw中的文本字段。我可以使用编码显示单元格中的文本字段数据bt问题是当我滚动tableview时文本值丢失。
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 100;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return subIncidentArray.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *cellIdentifier = @"cellapi";
UITableViewCell *incidentCell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
NSInteger row = [indexPath row];
NSDictionary *dic = [subIncidentArray objectAtIndex:row];
if (incidentCell == nil)
incidentCell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
if ([[dic objectForKey:@"TemplateType"] isEqual:@1]) {
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 40, 300, 30)];
textField.delegate = self;
textField.tag = 1;
textField.text = self.contentOfTextField;
[incidentCell addSubview:textField];
textField.borderStyle = UITextBorderStyleRoundedRect;
textField.textColor = [UIColor grayColor];
if ([dic objectForKey:@"TextValue"] ==[NSNull null])
textField.text = [dic objectForKey:@""];
else
textField.text = [dic objectForKey:@"TextValue"];
}
return incidentCell;
}
答案 0 :(得分:0)
尝试这样,它可能会起作用
UITableViewCell *incidentCell = [[UITableViewCell alloc]init];
答案 1 :(得分:0)
public class Circle extends GeometricObject
{
public double radius;
public Circle (double radius)
{
this.radius = radius;
}
public double getRadius()
{
return radius;
}
public double getArea()
{
return radius * Math.PI;
}
}
试试这个可行。
答案 2 :(得分:0)
我遇到了同样的错误,首先要确保subIncidentArray
中的cellForRowAtIndexPath
不为空。
尝试在此方法中重新初始化此数组的数据