2012-05-04 2 views
1

私のセルの1つからdetailViewがあります。私は2つのUITextFieldを持っています.100のような1つのタイプ値です。ポイントは別のUITextFieldに "a + b"値を表示させたいということです。例えば。私の "a"テキストフィールドには値45があります。 "b"テキストフィールドをタイプすると動的に変化すると思います。タイプ1のときは46、タイプ10のときは55、100 - 145しかし、私の問題は、 "古い"値を取得するので、10を入力すると、1を追加します。100を入力すると10が加算されます。最後に画面上の任意の場所をクリックするとキーボードが消えて、動的に変更することを想定しています。shouldChangeCharacterInRangeメソッドを使用してUITextFieldで正しい値を取得する

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 


    NSString *calculator=[calculateField text]; 
    int modifyer = [calculator intValue]; 


    intProtein = [protein intValue]; 
    int prot = [protein intValue]; 


    self.intProteinResult = prot+modifyer; 


    [proteinTextField setText:[NSString stringWithFormat:@"%i", intProteinResult]]; 


    return YES; 
} 

そして、はい、私は私に似た検索トピックをしようとしなかったし、他の方法を試してみましたstringByReplacingCharactersInRangeんでした:そこ私のコードの一部は、ある範囲のwithString:文字列。しかし、私はそれで動作する方法を理解できません。助けてください、どんな助言も高く評価されます。電卓変数に値を代入する

答えて

1

使用このコードは:

NSString* calculator = [[calculateField text] stringByReplacingCharactersInRange: range withString: string]; 

上記必ず交換したり編集されている文字に関係なく動作するはずです。

+0

ありがとう、肉のコーダー! –

関連する問題