有没有办法在Interface Builder中的UISegmentedControl中设置起始选定的段,还是必须在代码中执行?如果它在代码中,viewDidLoad是设置它的最佳位置?如何设置UISegmentedControl的默认状态?
13
A
回答
11
在界面构建器中,当您在UI上选择UISegmentedControl对象时,然后在属性窗格中,在段控件中有段下拉菜单,选择要选择的段(0,1等)并勾选'selected'选项下方。
39
从代码,你可以做self.segmentedControl.selectedSegmentIndex = someDefaultIndex
。
是否应该在viewDidLoad:
中设置它,完全取决于应用程序的结构。例如,如果您的应用第一次启动并加载视图,并且需要将控件设置为应用的上一次运行期间的任何值,那么在此处执行它肯定有意义。
0
如果你不使用故事板,并且想要在像我这样的一些设置/网络设置后设置一个默认索引,这个小片段将选择一些用户没有的东西。我把它放在我的子类UISegmentedControl
中,但是你可以把它放在任何地方。 (夫特3)
Decl: var UISegmentedControlNoSegment: Int { get }
Desc: A segment index value indicating that there is no selected segment. See selectedSegmentIndex for further information.
短版:
if selectedSegmentIndex == UISegmentedControlNoSegment {
selectedSegmentIndex = initialIndex
}
较长版本
func reloadData() {
guard let numberOfItems = dataSource?.numberOfItems() else {
return
}
removeAllSegments()
for index in 0...numberOfItems {
insertSegment(with: $image, at: index, animated: false)
}
if selectedSegmentIndex == UISegmentedControlNoSegment {
selectedSegmentIndex = initialIndex
}
}
0
单击分段控件后,请转到您创建分段的位置,然后选择您想要默认的分段。然后在下面会有一个带有“Selected”的Box。选择它,它将是默认的。
相关问题
- 1. 如何设置默认的UISegmentedControl外观?
- 2. 如何将UISegmentedControl设置回默认值
- 3. 设置数组的默认状态
- 4. 在UISegmentedControl中设置默认段
- 5. 将状态设置为默认按钮
- 6. jQuery延迟设置默认状态
- 7. 如何设置JavaScript的默认复选框状态?
- 8. 如何在ListView中设置复选框的默认状态[Android]
- 9. 如何设置UIButton的默认状态图像?
- 10. 如何在AngularJS中以默认的回退状态设置嵌套状态
- 11. ui-router如何设置默认状态和“未找到(404)”状态
- 12. 如何为无服务器功能设置默认状态码?
- 13. 如何使用Angular UI设置默认状态
- 14. 如何设置Datetimepicker的默认设置?
- 15. QPushButton默认状态
- 16. 默认状态2
- 17. 如何设置默认baseUrl
- 18. 如何设置默认值
- 19. 如何设置默认值?
- 20. 设为默认状态,而不#something
- 21. 如何设置默认设置
- 22. 重置CSS到默认状态
- 23. 设置框架,它的元素回到默认状态vb6
- 24. 新文章的默认状态被设置为废弃
- 25. WordPress的设置页面,如何默认复选框的状态来检查?
- 26. 如何将我的Android布局重置为默认状态?
- 27. UISegmentedControl的设置外观中断禁用状态
- 28. 如何将默认的单选按钮设置为隐藏状态?
- 29. 如何设置内核代码的默认ARM处理器状态?
- 30. 如何在自定义过程中设置新状态的默认原因?
这不会改变默认值! – 2012-06-13 15:15:00
哦,你点击选择的选项。我懂了。谢谢。 – 2012-06-13 15:15:53