故事板傳遞數據 的ViewController SecondViewController從模態的視圖
我想使用十進制墊在TextFieldNumber輸入數字後的數據(aNumber的,可變的NSString)在從模態SecondViewController LabelNumber(在視圖控制器)通過。 我在SecondViewController中添加一個關閉按鈕(酒吧按鈕項)並連接到Segue(mySegue)。 在視圖控制器有一個圓矩形按鈕鏈接到SecondViewController 下面是ViewController.m代碼
#import "ViewController.h"
#import "SecondViewController.h"
@interface ViewController()
@property (weak, nonatomic) IBOutlet UILabel *LabelNumber;
@property (weak, nonatomic) SecondViewController * SecondScreen;
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString: @"mySegue"]){
self.SecondScreen = segue.destinationViewController;
self.SecondScreen.aNumber = self.LabelNumber.text
}
- (IBAction)close:(UIStoryboardSegue*)sender {
if([sender.identifier isEqualToString:@"mySegue"]){
self.LabelNumber.text = self.SecondViewController.aNumber;
}
在SecondViewController.h我這個代碼:
#import <UIKit/UIKit.h>
@interface SecondViewController : UIViewController
@property (strong, nonatomic) NSString* aNumber;
@end
在SecondViewController.m我此代碼:
#import "ViewController.h" #import "SecondViewController.h" @interface SecondViewController() <UITextFieldDelegate>
@property(強,非原子)IBO utlet UITextField * TextFieldNumber; @end
- (void)viewDidLoad
{
[super viewDidLoad];
[self.TextFieldNumber becomeFirstResponder];
self.TextFieldNumber.delegate = self;
self.TextFieldNumber.text = self.aNumber;
}
- (IBAction)getValue:(UITextField *)sender {
self.aNumber = self.TextFieldNumber.text ;
[self.TextFieldNumber resignFirstResponder];
}
最後,我在SecondViewController.m總是補充說,即使我不想關閉鍵盤,但我希望它留下來並且總是想趕上關閉按鈕(模式展開)中的TextNumber值(aNumber)。
- (BOOL)textFieldShouldReturn:(的UITextField *)的TextField { 如果(文本框== self.TextFieldNumber) [self.TextFieldNumber resignFirstResponder]; 返回YES; }
是的,請高度讚賞一個例子:)也許解決方案1會更簡單?爲什麼我的代碼不適合我的情況? – Fabrizio