UISegmentedControl使用方法

2024-06-04 06:32

本文主要是介绍UISegmentedControl使用方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://www.jianshu.com/p/1ff8561d4e61

  • 初始化的方法

     //一次性初始化多个control,items可以是图片或者是文字array,系统会自动控制每个单元的大小//也可通过正常View的初始化进行- (instancetype)initWithItems:(NSArray *)items;
  • 事件添加

     //通过UIControl的方法来设置,当改变segments的时候通过事件UIControlEventValueChanged,//通过action来处理事件[self.mySegmentedControl addTarget:selfaction:@selector(myAction:)forControlEvents:UIControlEventValueChanged];
  • Segmented Controls的内容设置

     //通过索引设置以及获取Title和Image          - (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment;- (NSString *)titleForSegmentAtIndex:(NSUInteger)segment;- (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment;- (UIImage *)imageForSegmentAtIndex:(NSUInteger)segment;
  • Segmented Controls Segments的设置

     //在索引点插入一个新的标题的segment- (void)insertSegmentWithTitle:(NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated;//在索引点插入一个新的图片的segment- (void)insertSegmentWithImage:(UIImage *)image  atIndex:(NSUInteger)segment animated:(BOOL)animated;- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;- (void)removeAllSegmens;//Segment的数量@property(nonatomic,readonly) NSUInteger numberOfSegments;  //被选中的索引@property(nonatomic) NSInteger selectedSegmentIndex;
  • Segmented Controls显示和行为设置

     //默认值为NO,即点击后保持选中状态,如果设置为YES则,只是短暂的显示选中状态@property(nonatomic,getter=isMomentary) BOOL momentary;//通过索引调整每个segment的width,如果设置为0.0则表示自动调整大小,默认为0.0- (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment;- (CGFloat)widthForSegmentAtIndex:(NSUInteger)segment;//通过索引调整文字或者图片在segment的offset,默认为(0,0)- (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment;- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment;//设置segment是否能选中- (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment;       - (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment;//是否根据内容的大小自动调整宽度@property(nonatomic) BOOL apportionsSegmentWidthsByContent NS_AVAILABLE_IOS(5_0);
  • 自定义的外观

     //设置UISegmentedControl的边框,分隔线,文字,点击后的颜色@property(nonatomic,retain) UIColor *tintColor;//获取和设置背景图片,通过UIControlState和barMetrics的进行设置和获取,主要需要先设置//UIControlStateNormal才会有效果- (UIImage *)backgroundImageForState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics- (void)setBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics//设置分割线的图片样式,首先需要设置UIControlStateNormal不管左边还是右边,//设置完成后再调用设置方法,根据UIControlState显示分割线- (void)setDividerImage:(UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetrics- (UIImage *)dividerImageForLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetric        //设置Title的样式,包括 font, text color,  shadow。通过NSAttributedString.h里面的键值对- (void)setTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;- (NSDictionary *)titleTextAttributesForState:(UIControlState)state NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;//调整title和image的位置,通过给定的segment - (void)setContentPositionAdjustment:(UIOffset)adjustment forSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR; - (UIOffset)contentPositionAdjustmentForSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;



这篇关于UISegmentedControl使用方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1029321

相关文章

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

使用Python实现一键隐藏屏幕并锁定输入

《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

C/C++错误信息处理的常见方法及函数

《C/C++错误信息处理的常见方法及函数》C/C++是两种广泛使用的编程语言,特别是在系统编程、嵌入式开发以及高性能计算领域,:本文主要介绍C/C++错误信息处理的常见方法及函数,文中通过代码介绍... 目录前言1. errno 和 perror()示例:2. strerror()示例:3. perror(

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

CSS去除a标签的下划线的几种方法

《CSS去除a标签的下划线的几种方法》本文给大家分享在CSS中,去除a标签(超链接)的下划线的几种方法,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧... 在 css 中,去除a标签(超链接)的下划线主要有以下几种方法:使用text-decoration属性通用选择器设置:使用a标签选择器,将tex

C++变换迭代器使用方法小结

《C++变换迭代器使用方法小结》本文主要介绍了C++变换迭代器使用方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、源码2、代码解析代码解析:transform_iterator1. transform_iterat

C++中std::distance使用方法示例

《C++中std::distance使用方法示例》std::distance是C++标准库中的一个函数,用于计算两个迭代器之间的距离,本文主要介绍了C++中std::distance使用方法示例,具... 目录语法使用方式解释示例输出:其他说明:总结std::distance&n编程bsp;是 C++ 标准

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方