如何在一个方法中重新加载viewDidLoad,不要再次调用如[self viewDidLoad];

how to Reaload viewDidLoad in a method , Not call again such as [self viewDidLoad ];

提问人:Samina Shaikh 提问时间:3/26/2012 最后编辑:Inder Kumar RathoreSamina Shaikh 更新时间:2/14/2017 访问量:18802

问:

我想在方法中重新加载ViewdidLoad,但现在想像[self viewDidLoad]一样再次调用;

这可能吗?

IOS的 Objective-C iPhone Swift

评论

5赞 Mehul Mistri 3/26/2012
您不能手动执行此操作,而是使用 viewWillAppear
0赞 Krunal 3/26/2012
我该死的同意马文所说的话。使用 viewWillAppear...
1赞 Parth Bhatt 3/26/2012
这不是重新加载视图的正确方法。而是重新加载要反映在视图上的值。
0赞 user5553647 5/17/2016
这是我对类似问题的回答 stackoverflow.com/a/37268012/5553647

答:

1赞 Muzamil Hassan 3/26/2012 #1

是的,你可以从任何方法调用,但如果你发布你的方案,那么最好回复

[self viewDidLoad];
3赞 Ravi Kumar Karunanithi 3/26/2012 #2

将所有代码复制到 - (void)viewDidLoad 中,然后粘贴到 viewWillAppear 中

- (void)viewWillAppear:(BOOL)animated 
{
  [super viewWillAppear:animated];
  //paste your viewDidLoad codes
}
31赞 Inder Kumar Rathore 3/26/2012 #3

而不是调用,而是创建另一个方法(),然后移动其中需要调用的所有代码,然后从viewDidLoad:newMethod

- (void)viewDidLoad{
   [super viewDidLoad];
   [self newMethod];
}

然后从你的代码中,你想调用callviewDidLoad:

[self newMethod];

Swift 版本

func viewDidLoad() {
    super.viewDidLoad()
    self.newMethod()
}

然后从你的代码中,你想调用callviewDidLoad:

self.newMethod()