自定义UINavigationBar背景图片和颜色

news/2024/5/20 8:01:37

首先准备导航栏背景图片,大小 320x44, @2x文件大小640x88,iOS5以后更改背景图片较简单


  1. UINavigationBar *navBar = self.navigationController.navigationBar;
  2.  
  3. #define kSCNavBarImageTag 10
  4. if ([navBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)])
  5.     //if iOS 5.0 and later 
  6.     [navBar setBackgroundImage:[UIImage imageNamed:@"navbar1.png"] forBarMetrics:UIBarMetricsDefault];
  7. else 
  8.     UIImageView *imageView = (UIImageView *)[navBar viewWithTag:kSCNavBarImageTag];
  9.     if (imageView == nil) 
  10.     { 
  11.         imageView = [[UIImageView alloc] initWithImage: 
  12.                      [UIImage imageNamed:@"navbar1.png"]];
  13.         [imageView setTag:kSCNavBarImageTag]; 
  14.         [navBar insertSubview:imageView atIndex:0];
  15.         [imageView release]; 
  16.     } 

 


更改颜色,可以使用tintColor属性
  1. myBar.tintColor = [UIColor greenColor]; 


http://www.niftyadmin.cn/n/3653610.html

相关文章

动态装载问题的研究

1 问题背景我们都知道,Java平台一大亮点就在于其类装载器体系结构,这使得JVM可以在运行期从Java API,扩展路经(java.ext.path),classpath以及用户指定的位置(文件或网络)中载…

HTML5 音视频标签的方法、属性和事件

方法 方法描述addTextTrack()为音视频加入一个新的文本轨迹canPlayType()检查指定的音视频格式是否得到支持load()重新加载音视频标签play()播放音视频pause()暂停播放当前的音视频 属性 属性描述audioTracks返回可用的音轨列表(MultipleTrackList对象&#xff09…

One-Jar之旅

1 问题的提出作为一个经常使用Java编程的程序员,当我在发布我的Java程序的时候,我习惯于这样组织所有的程序和资源:主程序放到JVM系统变量“user.dir”所指向的目录中(假设是MyAppDir目录),程序…

JasperReport+iReport高级报表设计实战

JasperReportiReport高级报表设计实战序言一直以来,报表都是很多项目中一个重要的、不可获取的组成部分。然而其复杂性和专业性又使得程序员不能够也没时间自己设计属于目前手头正在构建的系统的报表模块;即便设计来了又可能由于通用性等原因不能够应用到…

获得OpenCms的数据库链接池

看到有网友问“是否可以修改OpenCms的表结构,修改之后如何访问”,答案是“可以”,OpenCms有自己的数据库链接池,在/WEB-INF/config/opencms.properties文件中配置,默认数据库链接池的名称是“default”,可以…

华丽转身—如何从程序员走向技术管理岗位

华丽转身是华而不实的假面具,我作为一名技术管理人员,建议大家不要轻易的转向管理岗位,坚持自己的技术才是根本。因为只有10%的技术专业人士具备相应的管理岗位所需要的特质,而更少的这样的人能够走到最后,管理岗位所做…

OpenCms开发之——自定义结构化类型

OpenCms中很重要的一个特性就是XML内容,通过XML内容,你可以创建自已的结构化内容,如新闻等,下面通过创建一个简单的“测试新闻”类型来介绍一下OpenCms的这一重要特性:1、新建模块“org.opencms.testnews(模…