-1

私のアプリでは、ビュー間で値を切り替えます [dismissModalViewControllerAnimated]。最初のviewcontrollerに1つのテキストと1つのボタンがあります。テキストが空の場合にボタンを押すと、アラートビューが表示されます。テキストがいっぱいの場合は、2 番目のビューの Label.it を計算します。しかし、最初のviewcontrollerから2番目のviewcontrollerに移動すると、渡す前にテキストの値が書き込まれます。したがって、もう一度押してボタンを押すと、ラベルに正しい値が表示されます。助けてください

FirstViewController.m

(IBAction)go:(id)sender {
if ([aText.text length]>0)
    {

        SecondViewController *lvc =[self.storyboard instantiateViewControllerWithIdentifier:@"second"];
        [self presentModalViewController:lvc animated:YES];

    }

    else {
        UIAlertView *message =[[UIAlertView alloc] initWithTitle:@"Warning" message:@"Please enter value" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [message show];
        [self dismissModalViewControllerAnimated:YES];

    }

SecondViewController.m

(IBAction)back:(id)sender {
    [self dismissModalViewControllerAnimated:YES]; 
}

変数 my formul の値:[atext floatvalue] * 2テキストが空で、テキスト 10 を入力し、ボタンを押した後、ラベルは NAN です 戻るボタンを押して、最初のビュー コントローラーに移動し、もう一度 GO ボタンを押します ラベルは 20 です

4

1 に答える 1

0

申し訳ありませんが、あなたが何をしようとしているのか理解できません (私は試しました!)。

ViewController から別の ViewController に値を渡したい場合は、次のようにする必要があります。

SecondViewController *lvc =[self.storyboard instantiateViewControllerWithIdentifier:@"second"];
lvc.value = yourValue;
[self presentModalViewController:lvc animated:YES];
于 2012-07-30T15:35:06.523 に答える