iPhone的九宫格实现代码

核心就这2个方法:

//Power by ieliwb.com
(void)viewDidLoad {
    
[super viewDidLoad];
    
    
NSArrayimageNames = [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=0i<9i++) {
        
CGRect frame;
        
Btn = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
        
[Btn setImage:[UIImage imageNamed:[imageNames objectAtIndexi]] 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;
        
//其他几个控制器类似
    
}
 
}

九宫格背景修改可以这样实现:

(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];
}

UINavigationBar背景图片可以这样实现:

@implementation UINavigationBar (CustomImage)
(void)drawRect:(CGRect)rect {
    
UIImage *image = [UIImage imageNamed: @"top_bg.png"];
    
[image drawInRect:CGRectMake(00self.frame.size.widthself.frame.size.height)];
}
@
end

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值