【问题标题】:Setting image views for particular table cells为特定表格单元格设置图像视图
【发布时间】:2012-05-24 07:49:41
【问题描述】:

这是一个有趣的问题。我正在开发一个带有 tableview 的应用程序。最初,tableview 有 4 行,并且所有 4 行在图像视图中都具有相同的图像。当我单击第一行时,我在第一行下手动添加了一些子行并重新加载了表格视图。当我第二次单击之前单击的同一行时,我删除了手动添加的对象并重新加载 tableview。我想更改 1 st 的图像。排在第 1 位时。单击行并第二次单击第一个。行然后显示所有四行相同的前一个图像..请告诉我如何做到这一点。

a=b=c=FALSE


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

{

    ///////11111

if(a==FALSE && indexPath.row==0)

{

 [array insertObject:@"a" atIndex:1];

  [array insertObject:@"b" atIndex:2];

 [array insertObject:@"c" atIndex:3];

a=TRUE;


}

   else if(indexPath.row==0 && a==TRUE)

 {

 [array removeObject:@"a"];

  [array removeObject:@"b"];

  [array removeObject:@"c"];


        a=FALSE;
    }


 else if(a==FALSE && b==FALSE && indexPath.row==1)


    {
        [array insertObject:@"d" atIndex:2];
          [array insertObject:@"e" atIndex:3];
          [array insertObject:@"f" atIndex:4];
        b=TRUE;
    }
    else if(a==TRUE && b==FALSE && indexPath.row==4)
    {
        [array insertObject:@"d" atIndex:5];
        [array insertObject:@"e" atIndex:6];
        [array insertObject:@"f" atIndex:7];
        b=TRUE;
    }
    else if(a==FALSE && b==TRUE && indexPath.row==1)
    {
        [array removeObject:@"d"];
        [array removeObject:@"e"];
        [array removeObject:@"f"];
        b=FALSE;
    }
    else if(a==TRUE && b==TRUE && indexPath.row==4)
    {
        [array removeObject:@"d"];
        [array removeObject:@"e"];
        [array removeObject:@"f"];
        b=FALSE;
    }



    /////////3333333333

    else if(a==FALSE && b==FALSE && c==FALSE && indexPath.row==2)
    {
        [array insertObject:@"m" atIndex:3];
        [array insertObject:@"n" atIndex:4];
        [array insertObject:@"p" atIndex:5];
        c=TRUE;
    }
    else if(a==FALSE && b==TRUE && c==FALSE && indexPath.row==5)
    {
        [array insertObject:@"m" atIndex:6];
        [array insertObject:@"n" atIndex:7];
        [array insertObject:@"p" atIndex:8];
        c=TRUE;
    }
    else if(a==TRUE && b==FALSE && c==FALSE && indexPath.row==5)
    {
        [array insertObject:@"m" atIndex:6];
        [array insertObject:@"n" atIndex:7];
        [array insertObject:@"p" atIndex:8];
        c=TRUE;
    }
    else if(a==TRUE && b==TRUE && c==FALSE && indexPath.row==8)
    {
        [array insertObject:@"m" atIndex:9];
        [array insertObject:@"n" atIndex:10];
        [array insertObject:@"p" atIndex:11];
        c=TRUE;
    }


        else if(a==TRUE && b==TRUE && c==TRUE && indexPath.row==8)
        {
            [array removeObject:@"m"];
             [array removeObject:@"n"];
             [array removeObject:@"p"];
            c=FALSE;
        }
        else if(a==TRUE && b==FALSE && c==TRUE && indexPath.row==5)
        {
            [array removeObject:@"m"];
            [array removeObject:@"n"];
            [array removeObject:@"p"];
            c=FALSE;
        }
        else if(a==FALSE && b==TRUE && c==TRUE && indexPath.row==5)
        {
            [array removeObject:@"m"];
            [array removeObject:@"n"];
            [array removeObject:@"p"];
            c=FALSE;
        }
    else if(a==FALSE && b==FALSE && c==TRUE && indexPath.row==2)
    {
        [array removeObject:@"m"];
        [array removeObject:@"n"];
        [array removeObject:@"p"];
        c=FALSE;
    }


    //////4444444444
    if(indexPath.row==[array count]-1)
    {
      ---
    }

    [tableview reloadData];
}

【问题讨论】:

  • 向我们展示你有趣的代码;)
  • 您需要清除您对 UITableview 中部分的概念以解决您的查询。它比你的问题更有趣
  • 您无法添加子行 ..索引路径会随着添加的每一行而改变..您是否有一个自定义单元格,它的行为异常地类似于 subRows?
  • 嗨,伙计们,我添加了我的代码,请通过它你会想到一个想法
  • 我很确定,你需要在 UITableview 中使用 Sections,它需要的工作量比这要少得多。

标签: iphone ios ios4


【解决方案1】:

我假设您正在使用包含字典的数组填充表格视图。 您可以在字典中设置一个标志(例如“扩展”或“折叠”),然后在 cellForRowAtIndexPath 中检查该标志是否为真/假,以便您可以根据该标志设置图像。

【讨论】:

  • 不,我没有添加字典。我手动添加了上面的对象请看代码
  • 您需要更改代码以使用节和带有字典的数组,这样您就可以正确跟踪事物,从而在需要时设置正确的图像;)
【解决方案2】:

创建具有类型单元格的类,该类具有您在单元格上拥有的数据成员和另一个类型为 NSString *parentElement 的数据成员。对于主要的四个标签,父元素将为空。但对于单元格内的子单元格,所有者单元格将是其父元素。所以现在检查父元素的条件并设置您想要的图像。它对我来说很好。希望它也对你有用。

【讨论】:

    猜你喜欢
    • 2022-06-29
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多