Ios 使用特定子视图重新加载/刷新视图控制器

Ios 使用特定子视图重新加载/刷新视图控制器,ios,objective-c,iphone,uiview,uiviewcontroller,Ios,Objective C,Iphone,Uiview,Uiviewcontroller,我有一个UIViewController,它有几个特定的子视图(如存折视图)。 退出视图时,我希望重新加载ViewController及其所有子视图。我调用rootviewController的viewDidLoad和viewWillLayoutSubviews方法,如下所示: - (IBAction)disconnect:(UIStoryboardSegue *)segue { self.sourceVC = segue.sourceViewController; self.d

我有一个UIViewController,它有几个特定的子视图(如存折视图)。 退出视图时,我希望重新加载ViewController及其所有子视图。我调用rootviewController的viewDidLoad和viewWillLayoutSubviews方法,如下所示:

- (IBAction)disconnect:(UIStoryboardSegue *)segue {
    self.sourceVC = segue.sourceViewController;
    self.disconnected = YES;
    ViewController *rootController=(ViewController *)((AppDelegate *)[[UIApplication sharedApplication] delegate]).window.rootViewController;
    [rootController viewDidLoad];
    [rootController viewWillLayoutSubviews];}
在我的ViewController类中:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    [self setupPBDataSource];}


- (void)viewWillLayoutSubviews {
[super viewWillLayoutSubviews];

CGRect frame = self.view.bounds;
CGFloat maxY = (([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)\
                ? 20 : 0);
frame.origin.y += maxY;
frame.size.height -= maxY;

if (!_passbookView) {
    self.passbookView =
    [[PBPassGroupStackView alloc] initWithFrame:frame datasource:self];
    [self.view addSubview:self.passbookView];
} else {
    [self.passbookView removeFromSuperview];
    self.passbookView =
    [[PBPassGroupStackView alloc] initWithFrame:frame datasource:self];
    [self.view addSubview:_passbookView];
}}

我只想知道如何重新加载我的新passbookView(在登录序列上创建了两个新的子视图)???谢谢。

您不应该直接调用
viewDidLoad
viewWillLayoutSubviews
。您可以创建新方法,大致封装您正在尝试的内容,但直接调用它们是非常不传统的。那么,如何在我的PasspookView中重新加载所有视图,而不是关闭removeFromSuperview和addSubview?我不知道有关
PBPassGroupStackView
的任何信息。是否有
重新加载数据
?你应该查一下API。