尽我所能,我无法解决iOS7 iPhone应用程序的UISegmentedControl错误.

当我创建分段控件时,我使用以下代码:

NSArray *segmentedControlItemArray = [NSArray arrayWithObjects: @"Nominal:\n27 inch",@"Actual:\n700c x 23mm",@"Actual:\n700c x 20mm",nil];

_wheelDiameterSegmentedControl = [[UISegmentedControl alloc] initWithItems:segmentedControlItemArray];

_wheelDiameterSegmentedControl.frame = CGRectMake(0,102,290,50);

_wheelDiameterSegmentedControl.selectedSegmentIndex = 0;

_wheelDiameterSegmentedControl.tintColor = [UIColor colorWithRed:0.35 green:0.4 blue:0.9 alpha:1.0];

for (id segment in [_wheelDiameterSegmentedControl subviews]) {

for (id label in [segment subviews]) {

if ([label isKindOfClass:[UILabel class]]) {

UILabel *titleLabel = (UILabel *) label;

titleLabel.numberOfLines = 0;

}

}

}

[_wheelDiameterSegmentedControl addTarget:self

action:@selector(pickOne:)

forControlEvents:UIControlEventValueChanged];

[_wheelDiameterMenuContainer addSubview:_wheelDiameterSegmentedControl];

可悲的是,我无法发布图像,或者我会向您展示我想要的控件:UISegmented Control中的每个段都有两行文本,其中一行换行符合我的要求.

但是,在旋转时,我想保持分段控件的全宽,并且换行在宽段中看起来很傻.所以,在willAnimateRotationToInterfaceOrientation中,我包含了以下代码,字符串中没有换行符:

[_wheelDiameterSegmentedControl setFrame:CGRectMake(0,450,50)];

[_wheelDiameterSegmentedControl setTitle:@"Nominal: 27 inch" forSegmentAtIndex:0];

[_wheelDiameterSegmentedControl setTitle:@"Actual: 700c x 23mm" forSegmentAtIndex:1];

[_wheelDiameterSegmentedControl setTitle:@"Actual: 700c x 20mm" forSegmentAtIndex:2];

再一次,如果我可以插入图像,我会向您显示我想要的图像:一个宽的UISegmented控件,标签中没有换行符(每个标签1行文本).

这是我遇到麻烦的地方.当我旋转回肖像时,我的选择似乎是:

1行标签文本,截断,格式

“实际:7 ……”

当我只是重置UISegmentedControl的大小时

[_wheelDiameterSegmentedControl setFrame:CGRectMake(0,50)];

2行标签文本,格式

“实际:

700c x ……“

当我重置大小并重置字符串值并重新运行将标签的numberOfLines设置为2的代码循环时,使用

NSArray *segmentedControlItemArray = [NSArray arrayWithObjects: @"Nominal:\n27 inch",nil];

[_wheelDiameterSegmentedControl setTitle:[segmentedControlItemArray objectAtIndex:0] forSegmentAtIndex:0];

[_wheelDiameterSegmentedControl setTitle:[segmentedControlItemArray objectAtIndex:1] forSegmentAtIndex:1];

[_wheelDiameterSegmentedControl setTitle:[segmentedControlItemArray objectAtIndex:2] forSegmentAtIndex:2];

for (id segment in [_wheelDiameterSegmentedControl subviews]) {

for (id label in [segment subviews]) {

if ([label isKindOfClass:[UILabel class]]) {

UILabel *titleLabel = (UILabel *) label;

titleLabel.numberOfLines = 2;

}

}

}

[_wheelDiameterSegmentedControl setFrame:CGRectMake(0,50)];

3行标签文字,格式

“实际:

700c x

20毫米”

这是我用上面的强制numberOfLines = 2替换当我首先设置UISegmentedControl时使用的numberOfLines = 0时得到的.

我想要的是我在创建控件时得到的结果

“实际:

700c x 20mm“

但无论我尝试过什么(将字符串和numberOfLines代码放入willRotateToInterfaceOrientation或didRotateFromInterfaceOrientation;在更改文本之前重新设置UISegmentedControl的框架;在更改文本后重新设置框架……),我可以’得到我漂亮,整洁,两线的标签.我在这里想念的是什么?

labelcontrol 多行_ios – UISegmentedControl中的两行文本相关推荐

  1. mysql 对表插入多行_MySQL表中怎么一次插入两行或更多行

    是的,我们可以一次在一个表中插入两行或更多行.以下是语法-insert into yourTableName(yourColumnName1,yourColumnName2) values(yourV ...

  2. 【蓝桥杯05】:小明每天都要练功,练功中的重要—项是梅花桩。小明练功的梅花桩排列成n行m列,相邻两行的距离为1,相邻两列的距离也为;小明想知道,在不掉下梅花桩的情况下,自己最少要多少步可以移动到目标。

    问题描述: 小明每天都要练功,练功中的重要一项是梅花桩.         小明练功的梅花桩排列成n行m列,相邻两行的距离为1,相邻两列的距离也为1.         小明站在第1行第1列上,他要走到第 ...

  3. 关于mysql行级锁中MVCC的一些理解

    一.MVCC简介 MVCC (Multiversion Concurrency Control),即多版本并发控制技术,它使得大部分支持行锁的事务引擎,不再单纯的使用行锁来进行数据库的并发控制,取而代 ...

  4. 怎么让上下两排对齐_Word中上下两行对不齐的处理方法

    有时候在word排版时,上下两行老是对不齐,很是烦躁.一个暴力方法,虽然看上去有点不着调,但是还是好用.今天,学习啦小编就教大家在Word中上下两行对不齐的处理方法. Word中上下两行对不齐的处理方 ...

  5. 测试nginx网站代码_在40行以下代码中使用NGINX进行A / B测试

    测试nginx网站代码 by Nitish Phanse 由Nitish Phanse 在40行以下代码中使用NGINX进行A / B测试 (A/B testing with NGINX in und ...

  6. Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面、索引行复合索引中的一个切面

    Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面.索引行复合索引中的一个切面 目录

  7. python导入csv文件是如何预览后10行-使用python中的csv reader只读取前N行csv文件

    我将一些csv文件的第二列中包含的文本添加到一个列表中,以便稍后对列表中的每个项目执行情绪分析.我的代码目前完全适用于大型csv文件,但是我对列表中的项目执行的情感分析花费了太长时间,这就是为什么我只 ...

  8. 不出现php version网页_php冷知识 - 从命令行参数列表中获取选项

    分享一个php的冷知识 - ,从命令行参数列表中获取选项 用到的函数是getopt 说明 函数签名是这样的 getopt ( string $options [, array $longopts [, ...

  9. div中同时存在文本和数字超过两行出省略号

    div中同时存在文本和数字超过两行出省略号 设置文本超过两行出省略号出现下面问题,未到指定宽度就换行 width: 255px;overflow: hidden;text-overflow: elli ...

  10. 过程 sp_addlinkedsrvlogin,第 91 行解密过程中出错的解决办法

    今天用连接服务器实现分布式查询时注册了连接服务器后,在创建服务器间的远程登录映射时报错,错误消息如下: 消息 15466,级别 16,状态 2,过程 sp_addlinkedsrvlogin,第 91 ...

最新文章

  1. PDF文档怎么提取其中一页
  2. python数字类型-Python数字类型介绍
  3. sql 密码随机生成
  4. 欧拉函数和最大公约数的组合应用
  5. Java黑皮书课后题第5章:5.40(模拟:正面或反面)编写程序,模拟抛硬币一百万次,显示出现正面和反面的次数
  6. mysql数据库知识点梳理_MySQL数据库知识点整理 (持续更新中)
  7. (六)ElasticSearch 6.1.1聚合查询
  8. jQuery 学习-样式篇(一):如何引用 jQuery
  9. go set up on ubuntu
  10. Linux后台启动脚本
  11. Normalize.css的使用及下载
  12. 基于Java毕业设计校园一卡通管理系统源码+系统+mysql+lw文档+部署软件
  13. 你都用 Python 来做什么?
  14. 苹果手机屏幕上的圆点怎么设置?(开启悬浮按钮)
  15. 深入理解MySQL(2):详谈索引结构
  16. golang实现稀疏数组(Sparse array)
  17. python中break语句的用法_Python break语句用法示例
  18. 如何运用python画名字_[原创]如何使用Python在好友画我上画一个标准的汉字震惊朋友圈...
  19. 【免费】微软Surface Go出厂镜像百度网盘链接
  20. electron仿微信截图工具(初学者的尝试笔记)

热门文章

  1. Atitit 安全登录退出管理法v3 tbb.docx 目录 1.1. 未持有效出入边界票据。。校验票据有效性 1 1.2. 从事与票据种类不符的活动的 2 1.3. 数据为数字的应该校验数字 2
  2. Atitit 提升扩展性的艺术 艾提拉著 目录 1. . 功能扩展 vs 性能扩展 1 1.1. udf机制 sp 等插件机制 1 1.2. 1.5. 脚本。脚本是扩展复杂功能的利器 2 1 1.3
  3. 1. 其他的一些加速 性能提升模式 1 2. 乱序执行技术 2 2.1. 处理器乱序执行 2 2.2. 编译器指令重排 3 2.3. 乱序的分类 3 2.4. 允许程序员显式的告诉处理器对某些地方禁止
  4. Atitti 跨语言异常的转换抛出 java js
  5. Atitit.加密算法 des  aes 各个语言不同的原理与解决方案java php c#
  6. atitit.解决net.sf.json.JSONException There is a cycle in the hierarchy
  7. paip.输入法编程---词库多意义条目分割 python实现.
  8. paip.网站提示SESSION过期 登录过期 以及二次登录的问题
  9. paip.python开发环境搭建
  10. TDengine:A股分钟线数据的尝试