Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.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
Iphone 使用viewWithTag:进行全局声明,并在viewDidLoad中声明:_Iphone_Ios_Memory_Uiviewcontroller_Declaration - Fatal编程技术网

Iphone 使用viewWithTag:进行全局声明,并在viewDidLoad中声明:

Iphone 使用viewWithTag:进行全局声明,并在viewDidLoad中声明:,iphone,ios,memory,uiviewcontroller,declaration,Iphone,Ios,Memory,Uiviewcontroller,Declaration,我启动了一个新项目,我想知道是否有人尝试过哪种方法更有效,在.h文件中声明一个对象(例如UIButton),或者在viewDidLoad方法中创建对象,并在创建元素后使用viewWithTag:方法访问该元素 当然,在.h文件中声明它将是最简单的,但由于我的应用程序将是重媒体(大量图像),我想知道使用标记是否会更好。我的意思是,应用程序将使用更少的内存,运行更流畅,诸如此类 感谢您的输入。我将使用IBOutlet访问您在XIB中声明的uiview。我的建议是: 1) 如果有很多事情正在进行,但您

我启动了一个新项目,我想知道是否有人尝试过哪种方法更有效,在.h文件中声明一个对象(例如UIButton),或者在viewDidLoad方法中创建对象,并在创建元素后使用viewWithTag:方法访问该元素

当然,在.h文件中声明它将是最简单的,但由于我的应用程序将是重媒体(大量图像),我想知道使用标记是否会更好。我的意思是,应用程序将使用更少的内存,运行更流畅,诸如此类


感谢您的输入。

我将使用IBOutlet访问您在XIB中声明的uiview。我的建议是:

1) 如果有很多事情正在进行,但您知道它们有多少(UILabel、UIButton、UIView、UIScrollView等),我会在XIB中创建它们,然后在iBoules中创建它们,以便在代码中控制它们。而且它使您的生活更轻松(从内存管理的角度)

2) 如果您不确定需要多少视图,我将动态创建它们。因为它可以让你自由添加你想要的数量


我的规则是:如果我知道我将拥有多少视图,可能会在XIB中创建它们,如果不是动态的。

现在我回顾这个问题,这似乎是一个愚蠢的问题。这两者应该具有相同的内存使用率,因为它们都将分配相同的内存量。也就是说,在.h文件中存储对对象的引用应该更好。这应该更好,因为viewWithTag函数将执行一些处理来获取指向对象的指针,而另一种方式是它已经存在于类中

我不使用界面生成器。我宁愿用代码来完成这一切,它给了我更多的灵活性。我还熟悉对象的alloc/retain/release的标准内存管理。我的问题更多的是一个理论性的问题。那时我真的帮不了什么忙。这个问题我给你打+1分,因为我现在很好奇