0

セルが NSdictionary に格納されているインデックス値のリストにある場合、テキストをグレーアウトしたい uitableview があります。ご覧のとおり、グレーアウトするインデックスのリストが nsdictionary に格納されているため、そのリストを if(condition???) に移動する方法が曖昧になります。

NSDictionary *myIndexList = [[inList objectAtIndex:0] objectForKey:@"myIndex"];
   NSLog( @"data from INDEX !!!!!!!! %@", myIndexList);

   if (indexPath.row == ???myIndexList????) {

       cell.textLabel.textColor = [UIColor lightGrayColor];
   }

どうもありがとうございました。この初心者の質問がうまくいくことを願っています。

4

1 に答える 1

1
for(NSString *aKey in myIndexList)
{
    if(indexPath.row == [myIndexList valueForKey:aKey])
    {
         cell.textLabel.textColor = [UIColor lightGrayColor];
    }
}

このコードは、ディクショナリ内のすべてのキーをチェックし、特定のキーの値が行と等しい場合、テキストの色を に変更しますlightGrayColor

の代わりにmyIndexListとして返すだけの場合は、次のように使用します。NSArrayNSDictionary

for(int n=0; n<[myIndexList count]; n++)
{
    if(indexPath.row == [[myIndexList objectAtIndex:n] integerValue])
    {
         cell.textLabel.textColor = [UIColor lightGrayColor];
    }
}
于 2012-05-29T20:23:06.363 に答える