objective c:将UIView参数传递给方法

时间:2015-11-06 11:00:49

标签: ios objective-c iphone uiview

我有一个名为Grid的类,在该类中有一个名为drawGrid的方法,参数为UIView(网格将在此视图中绘制)。

-(void)drawGrid:(UIView*)view
{
    int i,j;
    int x=27 , y=24;
    for (i=0; i<18; i++) {
        for (j=0; j<18; j++) {
            _viewGrid = [[UIView alloc]initWithFrame:CGRectMake(x,y,gridSize,gridSize)];
            _viewGrid.backgroundColor = [UIColor blueColor];
            [view addSubview:_viewGrid];
            x += 12;
        }
        x = 27;
        y += 12;
    }
}

ViewController.m 中,我有以下代码创建视图:

self.viewA = [[UIView alloc]initWithFrame:CGRectMake(20, 40, 276, 265)];
    _viewA.backgroundColor = [UIColor blackColor];
    [self.view addSubview:_viewA];

我还在 ViewController.m 中创建了一个Grid类的对象来调用draw方法:

Grid *grid;
    [grid drawGrid:_viewA];

问题是没有绘制网格。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

您需要分配并初始化Grid对象:

Grid *grid = [[Grid alloc] init];
[grid drawGrid:_viewA];