0

私は2セットのObjective-Cクラスをセットアップしています(xibファイルはありません)

  1. AdultTicketCalculatorViewController

//.h ファイル

#import <UIKit/UIKit.h>

@interface AdultTicketCalculatorViewController : UIViewController {

    IBOutlet UITextField *Quantity;
    IBOutlet UILabel *Pricelabel;
    IBOutlet UILabel *TotalLabel;
}

-(IBAction)calculate;
-(IBAction)clear;

@end

//.m

#import "AdultTicketCalculatorViewController.h"

@interface AdultTicketCalculatorViewController ()

@end

@implementation AdultTicketCalculatorViewController

-(IBAction)calculate {

    float x = ([Quantity.text floatValue]);
    float c = x*15;

    TotalLabel.text = [[NSString alloc] initWithFormat:@"$%.2f", c];

}

-(IBAction)clear {

    Quantity.text =@"";
    Pricelabel.text =@"$15.00";
    TotalLabel.text =@"";

}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

    [Quantity resignFirstResponder];

}
  1. AdultPayNowViewController

//.h

#import <UIKit/UIKit.h>

@interface AdultPayNowViewController : UIViewController {

    IBOutlet UILabel *Quantity ,*Price ,*QuantitySpace ,*TotalSum ,*TotalSumSpace;
    IBOutlet UIButton *ConfirmPurchase;

}

@end

//.m (まだ何も実装していません)

ユーザー入力と計算値を AdultTicketCalculator から取得し、次の方法で AdultPayNowViewController 内に表示したいと考えています。

  1. UITextField 'Quantity' (AdultTicketCalculatorViewController) が UILabel 'QuantitySumSpace (AdultPayNowViewController) に表示されます
  2. UILabel 'TotalLabel' (AdultTicketCalculatorViewController) が UILabel 'TotalSumSpace' に表示される
4

1 に答える 1

0

これは、2 つの異なる方法を使用して実現できます。

1.AdultTicketCalculatorViewControllerこのクラスで必要なNSUserDefaultsデータを保存し、でデータを取得しますAdultPayNowViewController

このような :

whenever pushing your view place this code or in 
- (void)viewDidDisappear:(BOOL)animated{
//place here
}

AdultTicketCalculatorViewControllerで

NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
    [defaults setObject: TotalLabel.text forKey:@"TotalLabel"];
    [defaults setObject: Quantity.text forKey:@"Quantity"];
    [defaults synchronize];

viewWillAppear メソッドで textfield 値を再割り当てします。

AdultPayNowViewController:

viewWillAppear メソッドで、この次のコードを配置します。

NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
   TotalSumSpace.text= [defaults  valueForKey:@"TotalLabel"];
   QuantitySumSpace.text= [defaults  valueForKey:@"Quantity"];

2. で文字列オブジェクトを合成し、AdultPayNowViewControllerから画面をプッシュすると値が割り当てられますAdultTicketCalculatorViewController

于 2013-03-28T11:48:25.030 に答える