-1

私は 3 つのフィールドを持ってtxtValue1txtValue2ます。(UITextfield)と( UILabel ) の値を乗算し、結果を(UILabel )に表示します。を使用して メソッドを試しましたが、空の状態で返されます。 どうすれば修正できますか?助けてくれてありがとう。 txtValue3CustomTableCell
txtValue1txtValue2txtValue3
cellforRowAtIndexPathDouble

//更新しました//

ここでは、webservice から txtValue1 と txtValue2 を取得しています。しかし、それらを計算してtxtVale3に結果値を表示したい。私は customTableviewcell を使用しています。たとえば、quantity.txt と price.txt を乗算して total.txt が必要です。皆さんが理解してくれることを願っています。

4

3 に答える 3

2

セルにそれぞれtagfor UITextFieldsayを追加します。97 and UILabel say 98 and 99

to dodelegateのメソッドを使用します。UITextFieldmultiply operation

 - (void)textFieldDidEndEditing:(UITextField *)textField 
{
  UITableView *cell = (UITableView *)[tbView cellForRowAtIndexPath:[tbView indexPathForRowAtPoint:textField.superview.frame.origin]];
  if (cell) {
     UITextField *txtField1 = (UITextField *)(cell viewWithTag:97);
     UILabel *lbl1 = (UILabel *)(cell viewWithTag:98);
     UILabel *lbl2 = (UILabel *)(cell viewWithTag:99);

    if(txtField1)
    {
       int value1 = [txtField1.text intValue];
       int value2 = [lbl1.text intValue];
       int value3 = value1 * value2
       lbl2.text = [NSString stringWithFormat:@"%d",value3];
    }
  }    
}

編集:質問に従って編集

于 2013-07-24T06:02:08.743 に答える
0

最初と 2 番目の値を取得したら (表示しているtableViewので、これらは複数あると想定しています)、次のような配列を準備します。

- (NSArray *) getArrayToLoadDataInTableView : (NSArray *) valueFromWebService {
    //load value from web service in `valueFromWebService` array in form of dictionary like MENTIONED BELOW or however convinient to you
    /*NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:
                                @"2", @"firstOprand",
                                @"2", @"secondOprand", nil];*/

    NSMutableArray *array = [NSMutableArray array];
    for (NSDictionary *dictionary in valueFromWebService) {
        NSMutableDictionary *finalDict = [dictionary mutableCopy];
        int result = [[finalDict valueForKey:@"firstOprand"] intValue] * [[finalDict valueForKey:@"secondOprand"] intValue];
        [finalDict setObject:[[NSNumber numberWithInt:result] stringValue] forKey:@"result"];
        [array addObject:finalDict];
    }
    return [NSArray arrayWithArray:array];
}

tableViewこれで、このメソッドから返された from this arrayにデータをロードできます。

于 2013-07-24T06:15:43.833 に答える