0

私は配列を持っていて、すべての値をarraypartnoに保存し、その特定の値をラベルに入れて、PARTNUMBERのようにセルに表示したいと思います:-

コードは次のとおりです:-

 for (int i =0 ; i<[arrData count]; i++)


   {    
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"Condition"]];
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"DateCode"]];
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"MFG"]];
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"PARTNUMBER"]];
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"Qty"]];
        [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"id"]];
    }

したがって、特定のキーについてlblplate1.textに書き込む必要があるので、配列値全体が表示されます。

UILabel *lblplate1 = [[UILabel alloc]initWithFrame:CGRectMake(20, 0, 200, 30)];

lblplate1.text = [arraypartno  objectAtIndex:indexPath.row];
lblplate1.textColor = [UIColor colorWithRed:2.0/255.0 green:143.0/255.0 blue:213.0/255.0 alpha:1];

lblplate1.backgroundColor =[UIColor clearColor];
[cell.contentView addSubview:lblplate1];
4

2 に答える 2

1

クライアントアプリケーションで作業している場合は、MVCを採用してみてください。condition、DateCode、MFG、Partnoなどのプロパティを持つモデルオブジェクトの形式でデータを保存し、モデルオブジェクトの配列にデータを保存します。

for (int icounter=0; icounter<[arrData count]; icounter++) {
                    if (objModalClass!=nil) {
                        [objModalClass release];
                        objModalClass=nil;
                    }
                    objModalClass=[[ModalClass alloc]init];
                    objModalClass.Condition=[[arrData objectAtIndex:i] valueForKey:@"Condition"];
                    objModalClass.DateCode=[[arrData objectAtIndex:i] valueForKey:@"DateCode"];;
                    objModalClass.partno=[[arrData objectAtIndex:i] valueForKey:@"PARTNUMBER"];
                    [arrList addObject:objModalClass];
                }
}

モデルクラスオブジェクトからデータを取得する

for (ModalClass *obj in arrList){
           lblCondition.text=obj.Condition;
}

新しいプロパティを追加または削除する必要がある場合に構造を変更するのは簡単なので、MVCを使用してみてください。

于 2013-02-19T13:58:37.140 に答える
0

同じ配列に異なるキー値を追加する代わりに、異なるキーに対して異なる配列を作成します

このような

    [arrayCondition addObject:[[arrData objectAtIndex:i] valueForKey:@"Condition"]];
    [arrayDateCode addObject:[[arrData objectAtIndex:i] valueForKey:@"DateCode"]];
    [arrayMFG addObject:[[arrData objectAtIndex:i] valueForKey:@"MFG"]];
    [arraypartno addObject:[[arrData objectAtIndex:i] valueForKey:@"PARTNUMBER"]];
    [arrayQty addObject:[[arrData objectAtIndex:i] valueForKey:@"Qty"]];
    [arrayID addObject:[[arrData objectAtIndex:i] valueForKey:@"id"]];

そしてcellforRowAtIndexPathで

lblplate1.text = [arraypartno  objectAtIndex:indexPath.row];

注:-viewDidLoadで配列を初期化してください。

于 2013-02-19T11:27:55.343 に答える