设置:
我在基于storyboard的视图中添加了一个简单的TextView,并在ViewController的.m文件中建立了一个Outlet引用。 我使用这个引用来设置文本,例如[_textViewOne setText:@"测试文本"];
。 我正在使用编译iOS 8.1的Xcode 6.1。
场景:
我想要让UITextView像UILabel一样不可选,但又因为我的文本可能是1行或2行,而UILabel在一个线性排列的视图中垂直居中对齐文本,在两行网格中从左上角开始,这是可以通过textview轻松实现的。
为了使它不可选,首先我从Storyboard中禁用了selectable
属性并尝试运行应用程序。 取消选择selectable
属性后,我的文本视图的文本没有使用我为其设置的颜色(我已经设置了红色),而是使用默认的黑色。
如果我勾选selectable
,文本颜色将遵循我在界面构建器中设置的任何内容。
问题:
为什么从界面构建器中取消选择
selectable
属性不会遵循我为textview设置的文本颜色。我还注意到一件事,如果我从接口建设者中取消选择
selectable
属性,并尝试像_textViewOne.selectable = YES;
这样以编程方式设置它,那么TextView也不会遵循我在接口构建器中设置的文本颜色,只有从接口构建器中检查该属性才有效。(尝试使用干净的构建,重新启动xcode)
我知道我只需要将TextView的用户交互设置为禁用以使其不可触摸,但我不小心取消了"selectable"选项并花费了一些时间才弄清楚发生了什么,所以我想知道我是否做错了些什么,或者这是某种问题,还是这个控件的正确行为。