在按钮点击返回null IOS时访问tableview之外的标签值

时间:2016-07-20 03:33:46

标签: ios

我已经在这个问题的所有地方进行了搜索,但是没有找到任何合法的解决方案。我在collectionviewcell每行都有一个标签,在collectionview外面有一个按钮,我想要的是点击collectionview之外的按钮访问所有标签值。我在iPhone屏幕上显示的单元格上获得了标签的值,但是滚动或不显示标签的空值。这是我的代码:

for (int h=0; h<detailArr.count; h++)
{
    NSNumber * num = [totalProductArr objectAtIndex:h];
    NSIndexPath * indexPath=[NSIndexPath indexPathForRow:[num intValue] inSection:0];
    NSLog(@"indexpath  text is %@", indexPath);
    AppointmentContentCell *cell = (AppointmentContentCell *)[self.collectionView cellForItemAtIndexPath:indexPath];   
    NSLog(@"text field text is %@", cell.serviceTypeLbl.text);
}


-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
    AppointmentContentCell*cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath];
    cell.serviceTypeLbl.text =[detailArr objectAtIndex:indexPath.row];
    cell.serviceCostLbl.text = [costArr objectAtIndex:indexPath.row];
    cell.totalServiceLbl.text = [totalServiceCount objectAtIndex:indexPath.row];

    return cell;
}

1 个答案:

答案 0 :(得分:0)

一如既往:

从模型(数据源数组)获取值,而不是从视图(单元格)中获取值。

这与您的代码相同,但我不确定逻辑是否打算

for (NSInteger h = 0; h < detailArr.count; h++)
{
  NSLog(@"Service Type is %@", detailArr[h]);
  NSLog(@"Service Cost is %@", costArr[h]);
  NSLog(@"Total Service is %@", totalServiceCount[h]);
}

要显示示例,请记录所有标签(数组)的值。

$raw_data= "A=400 B=500 C=300";

如果您使用自定义类而不是几个不相关的数组,那么它可能会更方便