我的設計具有從幾個不同視圖調用的「關鍵」視圖。Xcode 4.2.1故事板多對一視圖返回
使用Xcode Storyboard如何在用戶需要時「推」關鍵視圖,然後「彈出」關閉視圖以便用戶返回正確的視圖?
看來,該按鈕只能鏈接到一個返回點?
感謝 吉姆
我的設計具有從幾個不同視圖調用的「關鍵」視圖。Xcode 4.2.1故事板多對一視圖返回
使用Xcode Storyboard如何在用戶需要時「推」關鍵視圖,然後「彈出」關閉視圖以便用戶返回正確的視圖?
看來,該按鈕只能鏈接到一個返回點?
感謝 吉姆
謝謝,CHOWN - 你是正確的。
的解決方案是創建一個UIViewController子類,然後使用委託協議
DelegateClass.h
#import <UIKit/UIKit.h>
@protocol ReturnToMainMenu <NSObject>
@required
- (void) processSuccessful: (BOOL)success;
@end
@interface Recipe : UIViewController {
id <ReturnToMainMenu> delegate;
}
@property (strong) id delegate;
-(IBAction)done:(id)sender;
@end
Delegateclass.m
-(IBAction)backToMainMenu:(id)sender {
[[self delegate] processSuccessful:YES];
}
然後,在主叫
@interface FoodGroup : UIViewController <ReturnToMainMenu>
- (void) processSuccessful:(BOOL)success
{
NSLog(@"Process completed");
[self dismissViewControllerAnimated:YES completion:nil];
//[self performSelector:@selector(done:)];
}
類聲明協議
Jim,你的Recipe類應該對它的委託有一個弱引用,以避免代理和它的所有者持有相互引用的保留週期的潛在問題,從而阻止正確的釋放。
ARC之前,代表通常是(分配)屬性。我不相信ARC會以任何方式改變這一點,除了改變分配給弱。
您可能必須以編程方式執行此操作。手動設置切換過渡等 – chown