原理:

1. 用tintColor属性,把整个UISEgmentControl 设置成为透明色.

2. 设置正常状态下的titleTextAttributes.和选中状态下的titleTextAttributes.

  1. #import "SecondViewController.h"
  2. #import "Masonry.h"
  3.  
  4. @interface SecondViewController ()
  5.  
  6. @property (nonatomic, strong) UISegmentedControl * segmentedControl_one;
  7.  
  8. @end
  9.  
  10. @implementation SecondViewController
  11.  
  12. #pragma mark - 生命周期
  13. #pragma mark viewDidLoad
  14. - (void)viewDidLoad
  15. {
  16. [super viewDidLoad];
  17.  
  18. [self basicSetting];
  19.  
  20. [self addSegmentedControl_one];
  21.  
  22. }
  23.  
  24. #pragma mark - 系统代理
  25.  
  26. #pragma mark - 点击事件
  27. - (void)segmentedControl_one:(UISegmentedControl *)sender
  28. {
  29. NSLog(@"index: %ld",(long)sender.selectedSegmentIndex);
  30.  
  31. }
  32.  
  33. #pragma mark - 实现方法
  34. #pragma mark 基本设置
  35. - (void)basicSetting
  36. {
  37. self.title = @"隐藏边框";
  38. }
  39.  
  40. - (void)addSegmentedControl_one
  41. {
  42. [self.view addSubview:self.segmentedControl_one];
  43. [self.segmentedControl_one mas_makeConstraints:^(MASConstraintMaker *make) {
  44.  
  45. make.left.mas_equalTo(self.view).with.offset();
  46. make.right.mas_equalTo(self.view).with.offset(-);
  47. make.top.mas_equalTo(self.view).with.offset();
  48. make.height.mas_equalTo();
  49. }];
  50. }
  51.  
  52. #pragma mark - setter & getter
  53. - (UISegmentedControl *)segmentedControl_one
  54. {
  55. if (!_segmentedControl_one)
  56. {
  57. NSArray * array = @[@"第一段",@"第二段",@"第三段",@"第四段"];
  58. self.segmentedControl_one = [[UISegmentedControl alloc] initWithItems:array];
  59.  
  60. // 去掉颜色,现在整个segment偶看不到,可以相应点击事件
  61. self.segmentedControl_one.tintColor = [UIColor clearColor];
  62.  
  63. // 正常状态下
  64. NSDictionary * normalTextAttributes = @{NSFontAttributeName : [UIFont systemFontOfSize:16.0f],NSForegroundColorAttributeName : [UIColor grayColor]};
  65. [self.segmentedControl_one setTitleTextAttributes:normalTextAttributes forState:UIControlStateNormal];
  66.  
  67. // 选中状态下
  68. NSDictionary * selctedTextAttributes = @{NSFontAttributeName : [UIFont boldSystemFontOfSize:20.0f],NSForegroundColorAttributeName : [UIColor redColor]};
  69. [self.segmentedControl_one setTitleTextAttributes:selctedTextAttributes forState:UIControlStateSelected];
  70.  
  71. [self.segmentedControl_one addTarget:self action:@selector(segmentedControl_one:) forControlEvents:UIControlEventValueChanged];
  72. }
  73. return _segmentedControl_one;
  74. }
  75.  
  76. @end

iOS-UISegmentedControl-隐藏边框的更多相关文章

  1. iOS - UISegmentedControl

    前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UISegmentedControl : UIControl <NSCoding> @available ...

  2. iOS开发--隐藏(去除)导航栏底部横线

    iOS开发大部分情况下会使用到导航栏,由于我司的app导航栏需要与下面紧挨着的窗口颜色一致,导航栏底部的横线就会影响这个美观,LZ使用了以下方法.觉得不错,分享来给小伙伴们. 1)声明UIImageV ...

  3. iOS 键盘隐藏

     IOS7 点击空白处隐藏键盘的几种方法   IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我 ...

  4. iOS开发- 隐藏状态栏(电池栏)

    分为两种情况: 1. 想要隐藏某个视图的状态栏, 比方说, 从界面A, push 到界面B的时候, 界面A原本显示状态栏, 然而我们须要界面B不显示状态栏. 这时候, 能够这样做: 在B中实现: - ...

  5. h5 ios手机 隐藏input输入光标

    前面在做一个H5中用到的6位数字密码弹框(类似支付.微信那种)时,遇到一个可怕问题,那就是在浏览器和安卓中是不显示输入光标的,但是在ios手机上光标总是能看见,像穿透一样地显示最外层. 先说下实现密码 ...

  6. WPF中的TextBlock隐藏边框

    TextBlock默认是有边框的,显示效果如下:有一个淡蓝色的边框围绕着 如果需要隐藏这个边框,则只需要在代码中加上以下代码即可: BorderBrush="{x:Null}" B ...

  7. 在input中既隐藏边框,也隐藏轮廓的设置

    在设置input的时候,我们往往不想显示边框,所以通常会在css里面写"border"none",但是结果往往差强人意,如下图 我们这个时候可以加一个属性来把它的轮廓也隐 ...

  8. iOS 7 隐藏特性

    当 iOS7 刚发布的时候,全世界的苹果开发人员都立马尝试着去编译他们的app,接着再花上数月的时间来修复任何出现的故障,甚至重做app.这样的结果,使得人们根本无暇去探究 iOS7 所带来的新东西. ...

  9. 对于iOS 7 隐藏特性和解决之道

    当 iOS7 刚发布的时候,全世界的苹果开发人员都立马尝试着去编译他们的app,接着再花上数月的时间来修复任何出现的故障,甚至重做app.这样的结果,使得人们根本无暇去探究 iOS7 所带来的新东西. ...

  10. ios UISegmentedControl的使用简介

    初始化UISegmentedControl NSArray *arr = [[NSArray alloc]initWithObjects:@"轻拍",@"长按" ...

随机推荐

  1. GET请求中URL的最大长度限制总结

    由于jsonp跨域请求只能通过get请求,url长度根据浏览器及服务器的不同而有不同限制. 若要支持IE的话,最大的长度为2083字符,若是中文字符的话只有2083/9=231个字符. 若是Chrom ...

  2. git在分支上创建目录和文件

    创建一个空目录,在其中初始化git git init 创建一个新文件,此时默认在master分支上 touch file1.txt add到staging area git add file1.txt ...

  3. Selenium3笔记-WebDriver源码初探

    Selenium3 有哪些变化? 其实相对于与Selenium2,Selenium3没有做太多的改动.下面给出官方的文档说明,供参考. 参考文档:https://seleniumhq.wordpres ...

  4. IOS开发之不同版本适配问题2(#ifdef __IPHONE_7_0)

    继续说说ios不同版本之间的适配 先说一个东西:在xcode当中有一个东西叫targets,苹果的官方文档是这样说的: A target specifies a product to build an ...

  5. Dell U2913WM使用感受

    21:9比例,本来想代替双屏的,一周用下来还是不适应,如何能弯成曲面就爽了.感觉最舒服的还是以前19寸5:4双屏,点距大. 还尝试在旁边立个23寸,看了15分钟就受不了,头晕. 漏光,还行. 加了个A ...

  6. 外包采用Gradle生成多套app打包

    目的:可修改app名称.icon.包名.接口地址及其它 一.      修改基本配置(包名.版本号等) 配置module下的build.gradle 添加productFlavors例如: produ ...

  7. 菜鸟教程之工具使用(十)——用BlazeMeter录制JMeter测试脚本

    工具: 1,JMeter 2,Chrome 3,BlazeMeter 4,SwitchyOmega(如果需要代理) 步骤: 以上工具准备好以后就可以录制JMeter的测试脚本了, 在Chrome中点击 ...

  8. Changing the type of a property with EF Code First

    The smartest way is probably to not alter types. If you need to do this, I'd suggest you to do the f ...

  9. Mac OS 下安装wget

    环境:  Mac OS X 10.9.4 1 下载源码 地址: http://ftp.gnu.org/gnu/wget/wget-1.9.tar.gz 2 解压安装 tar zxvf wget-1.9 ...

  10. MSSql使用SQL语句快速查看表对的就说明,及表字段描述及字段类型

    --表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOIN sysobjects tbs ON ds. ...