iphone 实现九宫格效果

 

上面的是就功能的实现效果图  当然,能在布局上不是很完美,但是在功能上已经是OK了,这也是根据别人的实现我自己实现了一下的。

具体的代码如下:

- (void)viewDidLoad

{

    [superviewDidLoad];

// Do any additional setup after loading the view, typically from a nib.    

    UIImageView * contentView = [[UIImageViewalloc] initWithFrame:[[UIScreenmainScreen] applicationFrame]];

    [contentView setImage:[UIImage imageNamed:@"bg.png"]];

    [contentView setUserInteractionEnabled:YES];

    self.view = contentView;

    [contentView release];

 

    int index = 0;

    UIButton * button;

    NSArray * array = [NSArrayarrayWithObjects: @"1.png",@"2.png",@"3.png",@"4.png",@"5.png",@"6.png",@"7.png",@"8.png",@"9.png",nil];

    for(index = 0; index < [array count]; ++ index )

    {

        CGRect frame;

        button = [[UIButtonbuttonWithType:UIButtonTypeCustom] retain];

        [button setImage:[UIImageimageNamed:[array objectAtIndex:index]] forState:UIControlStateNormal];

        

        button.tag = index;

        

        frame.size.width = 90;

        frame.size.height = 90;

        frame.origin.x = (index % 3 ) * 90 + 25;

        frame.origin.y = floor(index / 3 ) * 90 + 95;

        [button setFrame:frame];

        

        [button setBackgroundColor:[UIColorclearColor]];

        [button addTarget:self  action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];

        [self.view addSubview:button];

        [button release];

    }                       

}

 

-(void)buttonPressed:(id)sender

{

    UIButton * button = (UIButton * )sender;

    NSLog(@"button index:%d" , button.tag );

}

你可能感兴趣的:(iPhone)