iPhone的九宫格实现代码(转)

本文介绍了一种使用图片堆砌实现iPhone应用中九宫格布局的方法。通过创建按钮并设置图片、位置和点击事件,可以轻松实现九宫格界面,并展示了如何为UINavigationBar设置背景图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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 ;
        
//其他几个控制器类似
    
}
 
}

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

- ( 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 ( 0 , 0 , self . frame . size . width , self . frame . size . height )] ;
}
@
end
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值