iOS-UISegmentedControl-隐藏边框

原理:

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

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

#import "SecondViewController.h"
#import "Masonry.h"

@interface SecondViewController ()

@property (nonatomic, strong) UISegmentedControl * segmentedControl_one;

@end

@implementation SecondViewController

#pragma mark - 生命周期
#pragma mark viewDidLoad
- (void)viewDidLoad
{
    [super viewDidLoad];

    [self basicSetting];

    [self addSegmentedControl_one];

}

#pragma mark - 系统代理

#pragma mark - 点击事件
- (void)segmentedControl_one:(UISegmentedControl *)sender
{
    NSLog(@"index: %ld",(long)sender.selectedSegmentIndex);

}

#pragma mark - 实现方法
#pragma mark 基本设置
- (void)basicSetting
{
    self.title = @"隐藏边框";
}

- (void)addSegmentedControl_one
{
    [self.view addSubview:self.segmentedControl_one];
    [self.segmentedControl_one mas_makeConstraints:^(MASConstraintMaker *make) {

        make.left.mas_equalTo(self.view).with.offset(10);
        make.right.mas_equalTo(self.view).with.offset(-10);
        make.top.mas_equalTo(self.view).with.offset(30);
        make.height.mas_equalTo(40);
    }];
}

#pragma mark - setter & getter
- (UISegmentedControl *)segmentedControl_one
{
    if (!_segmentedControl_one)
    {
        NSArray * array = @[@"第一段",@"第二段",@"第三段",@"第四段"];
        self.segmentedControl_one = [[UISegmentedControl alloc] initWithItems:array];

        // 去掉颜色,现在整个segment偶看不到,可以相应点击事件
        self.segmentedControl_one.tintColor = [UIColor clearColor];

        // 正常状态下
        NSDictionary * normalTextAttributes = @{NSFontAttributeName : [UIFont systemFontOfSize:16.0f],NSForegroundColorAttributeName : [UIColor grayColor]};
        [self.segmentedControl_one setTitleTextAttributes:normalTextAttributes forState:UIControlStateNormal];

        // 选中状态下
        NSDictionary * selctedTextAttributes = @{NSFontAttributeName : [UIFont boldSystemFontOfSize:20.0f],NSForegroundColorAttributeName : [UIColor redColor]};
        [self.segmentedControl_one setTitleTextAttributes:selctedTextAttributes forState:UIControlStateSelected];

        [self.segmentedControl_one addTarget:self action:@selector(segmentedControl_one:) forControlEvents:UIControlEventValueChanged];
    }
    return _segmentedControl_one;
}

@end
时间: 2024-12-21 00:01:28

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

IOS开发隐藏键盘的4种方法

IOS开发隐藏键盘的4种方法 开发的app中常会用到键盘输入完成后隐藏键盘的情况.在此总结了4种方法来实现我们的目的. 方法一--delegate方式 第一种隐藏键盘的方法,称为delegate三步法: 1. 遵循(委托/代理); 2. 调用; 3. 关联头文件(ViewController.h)中遵循代理 . 代码如下: #import <UIKit/UIKit.h> @interface ViewController : UIViewController<UITextFieldDel

iOS UISegmentedControl控件详解

我们经常使用的一个控件是Tab,这个控件可以帮助我们将App分为几个模块,但是在一个界面内我们想要再进行细分怎么办呢?这时候就需要用到UISegmentedControl控件了,这个控件的用处就是进行分段控制,实现的样式如下: 当选中一个分段的时候,其颜色填充,其余分段为未选中状态,可以很清晰明了地告知用户当前在哪个分段内容下,也方便用户切换. 具体的实现方式,还是先看代码: - (void)viewDidLoad { [super viewDidLoad]; // 初始化,添加分段名,会自动布

iOS开发隐藏键盘方法总结

iOS开发里键盘是经常需要打交道的地方,下面为大家带来我整理总结的几种隐藏键盘的方法. 一.隐藏自身软键盘 当对于有多个UITextField控件都想通过点击“Return”来隐藏自身软键盘的情况,这时的最好办法是使用Did End on Exit事件.在点击软键盘右下角的“Return”按钮后,会触发该事件.该事件有一个sender参数表示当前文本框,这样便可以编写一个通用的事件处理方法(.m文件). - (IBAction)TextField_DidEndOnExit:(id)sender 

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

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

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

分为两种情况: 1. 想要隐藏某个视图的状态栏, 比方说, 从界面A, push 到界面B的时候, 界面A原本显示状态栏, 然而我们须要界面B不显示状态栏. 这时候, 能够这样做: 在B中实现: - (void)viewDidLoad { [super viewDidLoad]; if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) { // iOS 7 [self prefersStatusBar

ios实现0.5px的几种方法,安卓设备也实用,安卓和ios实现细线边框

//判断ios版本 ,设置一个全局的样式名 hairlines,通过运用样式名,来给不同版本ios添加样式,ios版本不同对于0.5px显示效果也区别很大,同一个设备也是显示出五花八门的效果.//安卓不需要判断版本,可以跳过js判断. <script type="text/javascript">//js放在头部head区域 if (/iP(hone|od|ad)/.test(navigator.userAgent)) { var v = (navigator.appVer

android仿IOS,滑动隐藏底部ScrollView

在我们开发android app时,会有很多效果都需要模仿IOS,最近在做一个页面时,其中用到了 ScrollView,但要做成IOS那种在ScrollView滑动时,浮在ScrollView的功能按钮要隐藏,当滑动结束后,功能按钮又要显示出来.效果如下图所示: gif实在是不好搞,所以只能截个静态图来表示一下,当ScrollView滑动时,浮在最下面的按钮会以动画的形式隐藏,当停止滑动时,又会已动画的形式回到原位置. 思路:当监听到ScrollView滑动时,播放属性动画隐藏,当滑动结束的时候

WPF中的TextBlock隐藏边框

TextBlock默认是有边框的,显示效果如下:有一个淡蓝色的边框围绕着 如果需要隐藏这个边框,则只需要在代码中加上以下代码即可: BorderBrush="{x:Null}" BorderThickness="0" <TextBox Text="Hello" Width="480" TextWrapping="Wrap" IsReadOnly="True" BorderBrush

iOS 键盘隐藏

IOS7 点击空白处隐藏键盘的几种方法   IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们可以实现点击键盘以外的空白区域来将键盘隐藏,以下我总结出了几种隐藏键盘的方法: 首先说明两种可以让键盘隐藏的Method: 1.[view endEditing:YES]  这个方法可以让整个view取消第一响应者,从而让所有控件的键盘隐藏. 2.[textFiled resignFirstResp

ios UISegmentedControl的使用简介

初始化UISegmentedControl NSArray *arr = [[NSArray alloc]initWithObjects:@"轻拍",@"长按",@"清扫",@"旋转",@"捏合",@"拖拽", nil]; //先创建一个数组用于设置标题 UISegmentedControl *segment = [[UISegmentedControl alloc]initWithIt