UIBarButtonItem关于全局修改,局部修改
来源:互联网 发布:中国软件协会庐山 编辑:程序博客网 时间:2024/06/03 22:40
转载于:http://www.cnblogs.com/Fc-ios/p/3794163.html
全局修改:把所有UIBarButtonItem(或者一个控件)设为同一风格。
局部修改:根据一定条件把一部分UIBarButtonItem(或者一个控件)设为同一风格
有时侯你想把导航条左侧的所有按钮的外观,字体设置为同一风格,但你并不想把导航条左侧按钮外观字体或背景全部用以下代码来更改,如果这样改,有两个UIBarButtonItem,你就要写两次,这样写代码过于赘余,苹果提供了更好的方法统一设置。
UIBarButtonItem *rightItem = [YBarButtonItem barButtonWithStyle:YBarButtonStyleRoundedRectangle Title:@"Save" Action:@selector(saveButtonClicked) Delegate:self]; self.navigationItem.leftBarButtonItem = rightItem;
这里就有个方法可以进行全局或局部的修改:
!!!---本人开始用的时候也觉得奇怪,appearance方法怎么可以设置让所有同一种控件都为同一种风格,只能说是苹果太强大,他封装的了一个工具类UIAppearance可以统一设置控件的风格,当调用appearance方法时他会拿到相对应的控件(你用什么控件调用appearace方法,他就会返回什么控件),然后你可以设置统一主题(风格)---!!!
iOS5提供了一个比较强大的工具UIAppearance,可以轻松的统一你的界面,它提供如下两个方法:
+ (id)appearance
+ (id)appearanceWhenContainedIn:(Class <>)ContainerClass,...
第一个方法是统一全部改,比如你设置UINavigationBar 的tintColor,你可以这样写:
[[UINavigationBar appearance] setTintColor:myColor];/** 这样写之后,所有的 UINavigationBar 的tintColor的颜色都为myColor*/
第二个方法是当出现在某个类的出现时候才会改变:例如:
[[UIBarButtonItem appearanceWhenContainedIn:[UINavigationBar class], [UIPopoverController class], nil] setTintColor:myPopoverNavBarColor];
1.修改背景:
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:leftButton forState:0 barMetrics:UIBarMetricsDefault];
2.修改字体,阴影,字体颜色
NSDictionary* textAttributes = [NSDictionary dictionaryWithObjectsAndKeys: BAR_BUTTON_TITLE_TEXT_COLOR,UITextAttributeTextColor, BAR_BUTTON_TITLE_FONT,UITextAttributeFont, BAR_BUTTON_TITLE_SHADOW_COLOR,UITextAttributeTextShadowColor, [NSValue valueWithCGSize:CGSizeMake(1, 1)],UITextAttributeTextShadowOffset, nil]; [[UIBarButtonItem appearance] setTitleTextAttributes:textAttributes forState:0];
3,修改UIBarButtonItem中文字的位置:
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(2, -1) forBarMetrics:UIBarMetricsDefault];
0 0
- UIBarButtonItem关于全局修改,局部修改
- Maven修改全局和局部JDK版本
- Maven修改全局和局部JDK版本
- [iOS]修改UIBarButtonItem文字大小
- iOS 修改UIBarButtonItem title 字体大小
- iOS 修改UIBarButtonItem title 字体大小
- 修改UIBarButtonItem字体大小、颜色等相关属性
- 修改UIBarButtonItem字体大小、颜色等相关属性
- 修改UIBarButtonItem字体大小、颜色等相关属性
- 修改全局数据名
- MFC修改全局字体
- 修改全局状态栏颜色
- 全局修改字体
- Android 全局修改字体
- iOS 全局修改字体
- 修改全局线宽
- android_lottery_wifi_ethernet局部修改
- UIBarButtonItem自定义(修改与左端的距离)
- 逆向基础
- Could not commit Hibernate 异常问题,spring 事物 提交前session关闭问题
- Java基础
- 根据遍历结果,构造二叉树
- 优化网络请求
- UIBarButtonItem关于全局修改,局部修改
- Hadoop中VIntWritable编码方式解析
- 使用dwr框架实现登录用户名验证
- hdu 2531 Catch him【BFS】
- Linux下Tomcat的安装配置
- Android DrawerLayout子组件属性设定问题
- javaScript基础—imooc
- android 绘图
- java中private,protected,public的default的区别