Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.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 管理NSMutableArray中的uicontrol_Ios_Xcode_Nsmutablearray_Uicontrol - Fatal编程技术网

Ios 管理NSMutableArray中的uicontrol

Ios 管理NSMutableArray中的uicontrol,ios,xcode,nsmutablearray,uicontrol,Ios,Xcode,Nsmutablearray,Uicontrol,我有一个NSMutableArray 我创建一个UIControl(比如UISlider)并将其添加到for循环中的这个数组中 for (int i=0; i<totalSlider; i++) { UISlider *tmpSlider = [[UISlider alloc] initWithRect:CGRect(0,0,200,40)]; [myArray addObject: tmpSlider]; } 但是如何在维护的同时单独移除和释放这些对象呢 该阵列中的其余滑块 例如

我有一个NSMutableArray

我创建一个UIControl(比如UISlider)并将其添加到for循环中的这个数组中

for (int i=0; i<totalSlider; i++) {

UISlider *tmpSlider = [[UISlider alloc] initWithRect:CGRect(0,0,200,40)];

[myArray addObject: tmpSlider];

}
但是如何在维护的同时单独移除和释放这些对象呢 该阵列中的其余滑块

例如,此阵列中有10个滑块。 所以我想删除索引5处的滑块。怎么做呢?
谢谢。

首先,您已经在一个堆栈中创建了所有UISlider,位于每个UISlider的顶部

由于您的坐标相同
CGRect(0,0200,40)]

所以你只能看到其中一个

现在,如果您想删除其中任何一个,只需使用

[myArray removeObjectAtIndex:5];
编辑:

从……中提取的精华

与NSArray一样,NSMutableArray的实例维护强引用 对他们的内容。如果不使用垃圾收集,则在将对象添加到数组时 接收保留消息。从可变对象中删除对象时 数组,它接收一条释放消息。如果没有进一步的 引用该对象,这意味着该对象已解除分配。 如果程序保留对此类对象的引用,则 将变得无效,除非在之前向对象发送retain消息 它已从阵列中删除


首先,您已经创建了堆栈中的所有UISlider,它们位于每个UISlider的顶部

由于您的坐标相同
CGRect(0,0200,40)]

所以你只能看到其中一个

现在,如果您想删除其中任何一个,只需使用

[myArray removeObjectAtIndex:5];
编辑:

从……中提取的精华

与NSArray一样,NSMutableArray的实例维护强引用 对他们的内容。如果不使用垃圾收集,则在将对象添加到数组时 接收保留消息。从可变对象中删除对象时 数组,它接收一条释放消息。如果没有进一步的 引用该对象,这意味着该对象已解除分配。 如果程序保留对此类对象的引用,则 将变得无效,除非在之前向对象发送retain消息 它已从阵列中删除


首先不,我的滑块没有堆叠,因为我有代码来适当设置它们的中心点。总之,所以我不需要[[myArray objectAtIndex:j]发布]?释放?你在用MRC吗?好的,tq。所以我不需要手动释放。很高兴知道谢谢。首先,不,我的滑块没有堆叠,因为我有代码来正确设置它们的中心点。总之,所以我不需要[[myArray objectAtIndex:j]发布]?释放?你在用MRC吗?好的,tq。所以我不需要手动释放。很高兴知道,谢谢。