iPhone开发九宫格代码实现是本文要介绍的内容,九宫格大家应该很感兴趣吧?那么本文就是来介绍九宫格的制作方法,先来看详细内容。看到CocoaChina很多同学在问,其实很简单,我这是用图片堆砌实现的九宫格,分享如下,代码如下。
效果图:
核心就这2个方法:
//Power by ieliwb.com
- (void)viewDidLoad {
[super viewDidLoad];
NSArray* imageNames = [NSArray arrayWithObjects:
@"ico_mobile.png",
@"ico_idcard.png",
@"ico_postcode.png",
@"ico_flight.png",
@"ico_translate.png",
@"ico_phone.png",
@"ico_car.png",
@"ico_health.png",
@"ico_bjxm.png", nil];
UIButton *Btn;
for (int i=0; i<9; i++) {
CGRect frame;
Btn = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
[Btn setImage:[UIImage imageNamed:[imageNames objectAtIndex: i]] forState:UIControlStateNormal];//设置按钮图片
Btn.tag = i;
frame.size.width = 59;//设置按钮坐标及大小
frame.size.height = 75;
frame.origin.x = (i%3)*(59+32)+40;
frame.origin.y = floor(i/3)*(75+24)+40;
[Btn setFrame:frame];
[Btn setBackgroundColor:[UIColor clearColor]];
[Btn addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:Btn];
[Btn release];
}
}
//响应按钮事件
-(void)btnPressed:(id)sender{
UIButton *Btn = (UIButton *)sender;
int index = Btn.tag;
switch (index) {
case 0:
if(mobileController==nil)
mobileController = [[MobileController alloc]init];
[self.navigationController pushViewController:mobileController animated:YES];
break;
//其他几个控制器类似
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
九宫格背景修改可以这样实现:
- (void)loadView {
UIImageView *contentView = [[UIImageView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
[contentView setImage:[UIImage imageNamed:@"subview_9_bg.png"]];
[contentView setUserInteractionEnabled:YES];
self.view = contentView;
[contentView release];
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
UINavigationBar背景图片可以这样实现:
@implementation UINavigationBar (CustomImage)
- (void)drawRect:(CGRect)rect {
UIImage *image = [UIImage imageNamed: @"top_bg.png"];
[image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
小结:iPhone开发九宫格代码实现的内容介绍完了,希望本文对你有所帮助!