• UI<10>


    //声明对象
    @property (nonatomic,strong) UISegmentedControl *segmentedcontrol;
     
    //标题
        NSArray *segmentArry = [NSArray arrayWithObjects:@"中国",@"美国",@"大不列颠英国",@"俄罗斯", nil];
        //初始化
        self.segmentedcontrol = [[UISegmentedControl alloc] initWithItems:segmentArry];
        //iOS 7.0后被弃用
        //self.segmentedcontrol.segmentedControlStyle = UISegmentedControlStylePlain;
        self.segmentedcontrol.frame = CGRectMake(20, 40, self.view.frame.size.width-40, 30);
        //默认值为NO,即点击后保持选中状态,如果设置为YES则,只是短暂的显示选中状态
        self.segmentedcontrol.momentary = YES;
        //指示控件是否根据其内容宽度来调整片段宽度
        self.segmentedcontrol.apportionsSegmentWidthsByContent = YES;
        //设置UISegmentedControl的边框、分割线、文字、点击后的颜色
        self.segmentedcontrol.tintColor = [UIColor blueColor];
       
       
        //通过Attribute字符串属性字典设置Segment标签属性(正常状态下)
        [self.segmentedcontrol setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:15.0],NSForegroundColorAttributeName:[UIColor purpleColor]} forState:UIControlStateNormal];
        //通过Attribute字符串属性字典设置Segment标签属性(选中状态下)
         [self.segmentedcontrol setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:15.0],NSForegroundColorAttributeName:[UIColor redColor]} forState:UIControlStateSelected];
       
       
        //添加事件
        [self.segmentedcontrol addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
       
        [self.view addSubview:self.segmentedcontrol];
       
    //事件点击方法
    - (void)segmentAction:(UISegmentedControl *)click{
       
        //UISegmentedControl的段数
        NSInteger totelindext = self.segmentedcontrol.numberOfSegments;
        //当前选中Segment
        NSInteger selectindext = self.segmentedcontrol.selectedSegmentIndex;
        NSLog(@"共分:%ld段,当前选中:%ld段",totelindext,selectindext);
        //指定索引点插入新标题
        [self.segmentedcontrol insertSegmentWithTitle:@"德国" atIndex:selectindext animated:YES];
        //指定索引点插入新图片
        [self.segmentedcontrol insertSegmentWithImage:[UIImage imageNamed:@"flag"] atIndex:selectindext animated:YES];
        //移除指定Segment
        [self.segmentedcontrol removeSegmentAtIndex:selectindext+1 animated:YES];
        //移除全部Segment
        [self.segmentedcontrol removeAllSegments];
        //设置指定Segment的标题
        [self.segmentedcontrol setTitle:@"日本" forSegmentAtIndex:0];
        //返回指定Segment的标题
        NSString *segmentTitle = [self.segmentedcontrol titleForSegmentAtIndex:0];
        NSLog(@"索引为:0的标题设置为:%@",segmentTitle);
        //设置指定Segment的image
        [self.segmentedcontrol setImage:[UIImage imageNamed:@"flag"] forSegmentAtIndex:0];
        //返回指定Segment的image
        UIImage *segmentImage = [self.segmentedcontrol imageForSegmentAtIndex:0];
         NSLog(@"索引为:0的图片设置为:%@",segmentImage);
        //设置指定Segment的宽度 默认(0,0)自适应
        [self.segmentedcontrol setWidth:100 forSegmentAtIndex:0];
        //返回指定Segment的宽度
        CGFloat segmentW = [self.segmentedcontrol widthForSegmentAtIndex:0];
        NSLog(@"索引为:0的Segment宽度设置为:%.2f",segmentW);
        //设置指定Segment的偏移量
        [self.segmentedcontrol setContentOffset:CGSizeMake(5.0, 2.0) forSegmentAtIndex:0];
        //获取指定Segment的偏移量
        CGSize segmentSize = [self.segmentedcontrol contentOffsetForSegmentAtIndex:0];
         NSLog(@"索引为:0的Segment偏移量设置为:%@", NSStringFromCGSize(segmentSize));
        //设置指定Segment是否有效
        [self.segmentedcontrol setEnabled:YES forSegmentAtIndex:0];
        //返回指定Segment是否有效
        BOOL segmentBool = [self.segmentedcontrol isEnabledForSegmentAtIndex:0];
        NSLog(@"索引为:0的Segment当前是否可以点击:%@",segmentBool ? @"可以":@"不可以");
     
       
    }
     
     
     
     
  • 相关阅读:
    react-redux简单使用
    jQuery——Js与jQuery的相互转换
    移除HTML5 input在type="number"时的上下小箭头
    echarts 5.0 地图
    Vue echarts 设置初始化默认高亮
    echarts 渐变色
    隐藏滚动条css
    echarts 柱状图--圆角
    echarts 气泡图--option
    Vue 圆柱体组件
  • 原文地址:https://www.cnblogs.com/iQingYang/p/6693884.html
Copyright © 2020-2023  润新知