我正在尝试为UIButton设置状态。
但我不知道UIControlStateHighlighted
和UIControlStateSelected
之间的区别。
有人可以帮帮我吗?
谢谢和最诚挚的问候。
答案 0 :(得分:18)
它们可能意味着你想要的任何东西,但一般来说它们意味着以下内容:
突出显示=用户当前正在与一些停止互动时会改变的事物进行互动(例如,按住按钮)
已选择=该项目是当前组中的活动项目(例如,分段控件中的所选项目)。这只能通过以编程方式设置来实现。
答案 1 :(得分:4)
UIControlStateHighlighted
=当用户点击时,它突出显示带有一些闪光的按钮(在按钮背景中)。
UIControlStateSelected
=它没有突出显示该按钮。
答案 2 :(得分:2)
来自官方文件:
UIControlStateHighlighted 控件的突出显示状态。一个控件 在跟踪期间触摸进入和退出时进入此状态 当有一个补足事件。您可以检索并设置此值 通过突出显示的财产。
UIControlStateSelected 控件的选定状态。对于许多控件, 这种状态对行为或外表没有影响。但其他 子类(例如,UISegmentedControl类)可能有 不同的外观取决于他们选择的状态。您可以 通过selected属性检索并设置此值。
您的按钮会因触摸事件而获得highlighted
。然后它可以处于组内的selected
状态(用于分段控制)。
答案 3 :(得分:1)
突出显示通常在触摸控件时瞬时应用,选择的是更永久的状态。想象一个复选框类型按钮,当它被触摸时变暗 - 调暗突出显示,勾选选中,未选中未选中。
通常,您不会手动设置突出显示状态,因为系统会根据触摸设置/取消设置,而选择更安全。这特别适用于按钮。