0

質問があります。前のビューに戻り、戻ってきたフレームにデータを共有しようとしています。データは日付と時刻になり、これを textField に送信したいと思います。

たとえば、日付を *returneddate と呼び、textField を *dateTime と呼んでいます。ビューは *PickDateTime および SubmitEventsP2 と呼ばれます。

さらに情報が必要な場合は、私に尋ねてください。あなたが私を助けやすくするために、できる限り追加します.

Xcode 4.2 を使用しています。

4

1 に答える 1

0

わかりました..その非常に単純な..デリゲートを使用する必要があります...私が正しく理解していれば、あなたはセカンダリビューにいて、メインビューに戻ったときに、2番目のビューからメインビューにデータを送り返したいと考えています、 右?

したがって、2 番目のビューの .h ファイルで、インターフェイスの上に次のようにデリゲートを宣言します。

@class nameOfTheViewController;

@protocol nameOfTheViewControllerDelegate <NSObject>
-(void)methodNameOfDelegateReturning:(NSString *)string otherString:(NSString *)string2;
@end

そして、あなたのインターフェースでは、まだ.hで、このデリゲートの参照を次のように作成します:

@property(nonatomic, weak) id <nameOfTheViewControllerDelegate> delegate;

その後、 nameOfTheViewController の .m で次のようにします。

@synthesize delegate = _delegate;

nameOfTheViewController ファイルでデリゲートを作成した後、前のビューに戻りたい正確な場所とタイミングで作成したデリゲート メソッドを呼び出し、戻したいパラメーターを入力します...そしてもちろん、 mainViewController の didPrepareForSegue メソッドで、nameOfTheViewController クラスのインスタンスを作成し、そのデリゲート プロパティを self に設定します。これを可能にするには、mainViewController .h で nameOfTheViewControllerDelegate プロトコルに準拠する必要があります。

于 2012-05-28T11:51:39.747 に答える