1

私は mdspreadview セルで作業しています: https://github.com/mochidev/MDSpreadView 上記のリンクから。

水平方向にスクロールすると、cellforrowatindexpathメソッドが呼び出され、セルの値が変更されます。

  - (MDSpreadViewCell *)spreadView:(MDSpreadView *)aSpreadView cellForRowAtIndexPath:(MDIndexPath *)rowPath forColumnAtIndexPath:(MDIndexPath *)columnPath
   {
     static NSString *cellIdentifier = @"Cell";

MDSpreadViewCell *cell = [aSpreadView dequeueReusableCellWithIdentifier:cellIdentifier];
   if (cell == nil) {
    cell = [[[MDSpreadViewCell alloc] initWithStyle:MDSpreadViewCellStyleDefault reuseIdentifier:cellIdentifier] autorelease];
}
 switch (columnPath.row) {
    case 0:
    {
        radiobutton=[[UIButton alloc]initWithFrame:CGRectMake(0, 0, 10, 20)];
        [radiobutton setImage:[UIImage imageNamed:@"radio_button_off.png"] forState:UIControlStateNormal];

        [radiobutton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
        radiobutton.titleLabel.font =[UIFont systemFontOfSize:14.f];
        cell.backgroundColor=[UIColor blackColor];
        [cell addSubview:radiobutton];
        break;
    }
    case 1:
        cell.textLabel.text=[self.timearray objectAtIndex:rowPath.column];
        break;
        case 2:
        cell.textLabel.text=[self.firstnamearray objectAtIndex:rowPath.column];
        break;
        case 3:
        cell.textLabel.text=[self.lastnamearray objectAtIndex:rowPath.column];
        break;
        case 4:
        cell.textLabel.text=[self.agearray objectAtIndex:rowPath.column];
        break;
        case 5:
        cell.textLabel.text=[self.reasonarray objectAtIndex:rowPath.column];
        break;
        case 6:
        cell.textLabel.text=[self.statusarray objectAtIndex:rowPath.column];


    default:
      break;

}

    NSLog(@"%d,%d,%d,%d,%d,%d",rowPath.section,columnPath.section,rowPath.row,columnPath.row,rowPath.column,columnPath.column);

return cell;
  }

    - (void)spreadView:(MDSpreadView *)aSpreadView didSelectCellForRowAtIndexPath:(MDIndexPath *)rowPath forColumnAtIndexPath:(MDIndexPath *)columnPath
 {

[spreadView deselectCellForRowAtIndexPath:rowPath forColumnAtIndexPath:columnPath animated:YES];
NSLog(@"Selected %@ x %@", rowPath, columnPath);




 }

スプレッド ビューの幅がビューの幅より大きい場合、この問題が発生します。

それから私の問題は、ビューがロードされたときにボタンが最初の列と4番目の列(ケース0とケース4)に追加されることですが、最初のものだけに追加しました。ここ数日苦労していた私を助けてください。ありがとうございました。

4

0 に答える 0