赋值使指针从整数开始,而没有强制转换:地址发布

| 我想要每个编写的图形组件的地址,以便以后可以使用,因为它是一个大矩阵,所以我不想这样做:\“
for(UIView *myView in [self.view subviews]){
\”。 <-链接太慢,常常无法获得想要的东西。 但是,我可以通过保留地址并将指针地址设置为它来获得所需的结果,但是我得到一个警告:
UIView *myView = [[UIView alloc] initWithFrame:RectFrame];
address[j][i] = (int) myView;
myView = address[j][i];   //  <---Assignment makes pointer from integer without a cast
好的,所以我尝试用(UIView)进行投射并获得...
UIView *myView = [[UIView alloc] initWithFrame:RectFrame];
address[j][i] = (int) myView;
myView = (UIView) address[j][i];  //  <---Conversion to non-scalar type requested
那么我该如何安抚并清除警告“分配使指针从整数开始而无需强制转换”? 谢谢     
已邀请:
首先,迭代,操作和绘制1000个UIView可能很慢,无论您​​如何操作。而且我敢打赌,“绘图”部分将成为您的瓶颈,因此我怀疑遍历
subviews
数组或2D C数组之间的差异会在速度上产生明显差异。 也就是说,要使警告消失,请将您的数组声明为
(UIView *)
指针而不是
int
数组:
UIView *address[100][10];
然后,您无需在任何地方进行任何类型转换。     
为什么不使用Tag属性,则可以使用[self viewWithTag:aTag];     
我不明白您在做什么,但直接回答,应该是
myView = (UIView *) address[j][i];
    

要回复问题请先登录注册