Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 设置self.view=nil的效果_Ios_Iphone_Uiview_Uiviewcontroller - Fatal编程技术网

Ios 设置self.view=nil的效果

Ios 设置self.view=nil的效果,ios,iphone,uiview,uiviewcontroller,Ios,Iphone,Uiview,Uiviewcontroller,我有一个与默认视图关联的viewcontroller 如果我想放弃view only而不是viewcontroller,是否可以设置self.view=nil?因此,该视图将被丢弃,新视图将被分配新值 我想根据我在viewdidLoad中所做的一个条件,用新的UI填充视图。因此,如果我设置self.view=nil,并尝试从任何位置访问该视图,它将再次创建该视图。因此,将设置新属性 这是一种正确的做法吗。或者我必须编写一个单独的方法来使用新属性刷新视图 请提供正确的方法。不要删除uiviewco

我有一个与默认视图关联的viewcontroller

如果我想放弃view only而不是viewcontroller,是否可以设置self.view=nil?因此,该视图将被丢弃,新视图将被分配新值

我想根据我在viewdidLoad中所做的一个条件,用新的UI填充视图。因此,如果我设置self.view=nil,并尝试从任何位置访问该视图,它将再次创建该视图。因此,将设置新属性

这是一种正确的做法吗。或者我必须编写一个单独的方法来使用新属性刷新视图


请提供正确的方法。

不要删除uiviewcontroller附带的默认视图。如果您想根据条件显示自定义
ui视图
,我建议您创建自定义
ui视图
,然后初始化它并将其添加到相应条件的默认视图中

不要删除uiviewcontroller附带的默认视图。如果您想根据条件显示自定义
ui视图
,我建议您创建自定义
ui视图
,然后初始化它并将其添加到相应条件的默认视图中

不要删除uiviewcontroller附带的默认视图。如果您想根据条件显示自定义
ui视图
,我建议您创建自定义
ui视图
,然后初始化它并将其添加到相应条件的默认视图中

不要删除uiviewcontroller附带的默认视图。如果您想根据条件显示自定义
ui视图
,我建议您创建自定义
ui视图
,然后初始化它并将其添加到相应条件的默认视图中

我认为没有正确的方法,但这里有一些建议

不要中断视图生命周期(确保
-view将出现:
-view显示:
-view将消失:
-view消失:
全部调用)

考虑包含在自定义容器视图控制器中的多个视图控制器,而不是交换视图。它将使每个视图控制器专注于特定的任务

考虑使用空的
self.view
,并使用
-addSubview:
/
-removeFromSuperview
交换内容。这样你就不需要重新设置self.view了。我认为没有正确的方法,但这里有一些建议

不要中断视图生命周期(确保
-view将出现:
-view显示:
-view将消失:
-view消失:
全部调用)

考虑包含在自定义容器视图控制器中的多个视图控制器,而不是交换视图。它将使每个视图控制器专注于特定的任务

考虑使用空的
self.view
,并使用
-addSubview:
/
-removeFromSuperview
交换内容。这样你就不需要重新设置self.view了。我认为没有正确的方法,但这里有一些建议

不要中断视图生命周期(确保
-view将出现:
-view显示:
-view将消失:
-view消失:
全部调用)

考虑包含在自定义容器视图控制器中的多个视图控制器,而不是交换视图。它将使每个视图控制器专注于特定的任务

考虑使用空的
self.view
,并使用
-addSubview:
/
-removeFromSuperview
交换内容。这样你就不需要重新设置self.view了。我认为没有正确的方法,但这里有一些建议

不要中断视图生命周期(确保
-view将出现:
-view显示:
-view将消失:
-view消失:
全部调用)

考虑包含在自定义容器视图控制器中的多个视图控制器,而不是交换视图。它将使每个视图控制器专注于特定的任务


考虑使用空的
self.view
,并使用
-addSubview:
/
-removeFromSuperview
交换内容。这样,您就不需要重置
self.view

是否建议从self中删除视图并将其设置为nil?是否建议从self中删除视图并将其设置为nil?是否建议从self中删除视图并将其设置为nil?那么该怎么办除了您建议的viewcontroller包容之外,您认为在我的问题中应该遵循哪个选项above@user2634244这是你有多少时间的问题。多视图控制器将是一个更大的重构,但将创建更好、更可维护的代码。交换子视图会更快,但会创建一个更混乱、更难维护的视图控制器。那么,除了您建议的视图控制器控制之外,在我的问题中,您认为什么是好的方法above@user2634244这是你有多少时间的问题。多视图控制器将是一个更大的重构,但将创建更好、更可维护的代码。交换子视图会更快,但会创建一个更混乱、更难维护的视图控制器。那么,除了您建议的视图控制器控制之外,在我的问题中,您认为什么是好的方法above@user2634244这是你有多少时间的问题。多视图控制器将是一个更大的重构,但将创建更好、更可维护的代码。交换子视图会更快,但会创建一个更混乱、更难维护的视图控制器。那么,除了您建议的视图控制器控制之外,在我的问题中,您认为什么是好的方法above@user2634244这是一个多少钱的问题