UISegmentedControl
来源:互联网 发布:学大数据要高数基础吗 编辑:程序博客网 时间:2024/05/01 06:25
1:在iOS 5开始,新增的API可以直接定制个性化的 UISegmentedControl ,方式如下:
首先要知道,它的高度只能是:44.而且还改变不了,那么开发者需要告诉设计师提供的图片资源高度 需要 44高度,高清就是88.
另外设计师提供的44像素中的顶部和底部不要包含暗淡的像素存在,否则,中间的线条就会被迫突显出来,如下图:
2:利用iOS5 为 UISegmentedControl 设置按钮里面的字体颜色大小等
[self setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor Help_colorWithRGB:@[@210.0,@210.0,@210.0] alpha:1], UITextAttributeTextColor,[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8],UITextAttributeTextShadowColor,[NSValue valueWithUIOffset:UIOffsetMake(0, -1)],UITextAttributeTextShadowOffset,[UIFont fontWithName:@"Arial-Bold" size:0.0],UITextAttributeFont,nil]forState:UIControlStateNormal];
注:可以设置以下四种值:
UITextAttributeFont :字体格式
UITextAttributeTextColor:字体颜色UITextAttributeTextShadowColor:字体阴影颜色UITextAttributeTextShadowOffset:字体阴影偏移量3:记录 UISegmentedControl 分段的数量
NSLog(@"%d",self.numberOfSegments);
4:通过遍历子视图的方式获取 分段的每一个View
[self.subviews enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { NSLog(@"%@",NSStringFromClass([obj class])); [obj setTag:idx + 5];}];
注:再循环的时候 为每一个View 添加tag 值,那么接下来就可以通过标记来取到指定的View
分段控件在遍历所有子视图的时候是倒着来的,所以,想要按照正常思路取到指定的View需要如下写代码:
-(UIView *)Parent_segmentViewWithIndex:(NSInteger)index{ if (index > self.numberOfSegments -1) { return nil; } return [self viewWithTag:self.numberOfSegments - 1 - index + 5];}
上面代码中的 5 只是为了对应 设置时的 5. 没什么实际用处, 说明一点就是:Tag值 不要从 0 开始 就行了.
还有就是 iOS 5.0 的时候 分段控件内部视图的每一个View的大小 只有在ViewDidAppear 调用时,才计算出了 具体大小.
而iOS 6.0以后 在ViewDidLoad时 就可以直接获取了.
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- 【UISegmentedControl】
- 判断NSString是不是纯数字
- 堆栈的区别 及 增长方向
- 大连市知名中医(整理中)
- timestamp格式的日期
- Shell中引号、单引号、反引号简介
- UISegmentedControl
- Objective-C中一种消息处理方法performSelector: withObject:
- 学习linux/unix编程方法的建议,学习Linux的四个步骤
- ajax请求,在success、error模块中return无效
- Reachability判断网络状态for ARC
- linux命令大全
- C++ 基于红黑树RBTree的关联容器Map类
- (备用)matlab自带的princomp函数
- 存储过程用例--新增、修改、删除数据