这是我参与8月更文挑战的第7天,活动详情查看:8月更文挑战
一,Button组件
按钮组件:可响应用户的点击并用于启动或确认操作。
1.1 组件介绍
属性:
- Interactible:此属性确定该组件是否接受输入。此属性设置为 false 时,交互被禁用,过渡状态也将设置为禁用状态。
- Transition:在可选组件中,有几个过渡选项,具体取决于可选组件的当前状态。不同的状态包括:正常、突出显示、按下和禁用。
- Navigation:还有许多导航选项可用于控制如何实现控件的键盘导航。
过度模式:(颜色为例其他同理)
- Target Graphic:用于交互组件的图形。
- Normal Color:控件的正常颜色
- Highlighted Color:控件突出显示时的颜色
- Pressed Color:控件按下时的颜色
- Disabled Color:控件禁用时的颜色
- Color Multiplier:这会将每个过渡的着色颜色乘以其值。由此可以创建大于 1 的颜色,从而使基色小于白色(或小于完整 Alpha)的图形元素上的颜色(或 Alpha 通道)变亮。
- Fade Duration:从一个状态淡入淡出到另一个状态所需的时间(以秒为单位)
1.2 代码监听
- 监听无参数形式
public Button m_Btn;
void Start()
{
//监听无参数函数
m_Btn.onClick.AddListener(OnClickBtn);
}
public void OnClickBtn(int i)
{
Debug.Log("带参函数响应,参数是:" + i);
}
- 委托形式监听
public Button m_Btn;
void Start()
{
//委托监听
m_Btn.onClick.AddListener(delegate () {
OnClickBtn(111);
});
}
public void OnClickBtn(int index)
{
Debug.Log("委托监听, 参数是:" + index);
}
- Lambda形式简化
public Button m_Btn;
void Start()
{
//Lambda监听
m_Btn.onClick.AddListener(() => {
OnClickBtn(111);
});
}
public void OnClickBtn(int index)
{
Debug.Log("委托监听, 参数是:" + index);
}
二,Toggle组件
开关组件:是让用户打开或关闭某个选项的复选框。
2.1 组件介绍
属性
- Interactable:是否接收点击
- Transition:确定控件以何种方式对用户操作进行可视化响应的属性。1
- Navigation:确定控件顺序的属性。1
- Is On:开关在开始时是否为打开状态
- Toggle Transition:开关在其值发生变化时以图形方式作出的反应。提供的选项为 None_(即复选标记直接出现或消失)和 Fade_(即复选标记淡入或淡出)。
- Graphic:用于复选标记的图像(那个对号√)。
- Group:此开关所属的开关组。
2.2 代码监听
Toggle 的监听是默认传递当前是否勾选的bool值,这样可以方便用户直接使用。若需要加其他的参数也可以仿照1例中Button的委托或者Lambda形式去写就可以了。
public Toggle m_Toggle;
void Start()
{
m_Toggle.onValueChanged.AddListener(OnClickToggle);
}
void OnClickToggle(bool isOn)
{
if (m_Toggle.isOn)
{
Debug.Log("此Toggle已勾选");
}
else
{
Debug.Log("此Toggle已取消勾选");
}
}
三,Slider组件
滑动条组件:允许用户通过拖动鼠标从预定范围中选择数值。
3.1 组件介绍
属性
- Interactable:此组件是否接受输入。
- Transition:确定控件以何种方式对用户操作进行可视化响应的属性。1
- Navigation:确定控件顺序的属性。1
- Fill Rec:用于控件填充区域的图形。
- Handle Rect:用于控件滑动“控制柄”部分的图形
- Direction:拖动控制柄时滑动条值增加的方向。选项包括 Left To Right、Right To Left、Bottom To Top 和 Top To Bottom。
- Min Value:控制柄处于极下端(由 Direction 属性确定)时的滑动条值。
- Max Value:控制柄处于极上端(由 Direction 属性确定)时的滑动条值。
- Whole Numbers:是否应该将滑动条约束为整数值?
- Value:滑动条的当前数值。如果在 Inspector 中设置了该值,则该值将用作初始值,但是当值变化时,运行时的值也将变化。
3.2 代码监听
public Slider m_Slider;
void Start()
{
// 监听 --> 会自动将value作为参数传递
m_Slider.onValueChanged.AddListener(OnValueChanged_Slider);
}
void OnValueChanged_Slider(float value)
{
Debug.Log("滑动条值改变响应方法, 当前Slider的值:" + value);
}
好了今天就学到这里吧,UI交互组件动态监听已经学了三个了,还有三个我们下篇见吧~ 代码动态监听UI交互组件(二)