当选择框被选中时返回的是布尔值
Bool Toggle(rect, bool(),string);
Bool Toggle(rect, bool(),image);
例如
public class Toggle : MonoBehaviour
{
private bool toggle0;
void OnGUI()
{
toggle0 = GUI.Toggle(new Rect(10, 40, 100, 20), toggle0, " A. 3");
}
}
选择框一般用于选择题
但是选择题是单选时,在选中一个选项的同时需要将其他选项取消选择
private bool[] ischange = new bool[] { false, false, false, false };
首先定义数组用来保存每个选择框的状态
此时要提到一个函数
GUI.changed
如果任何控件更改了输入数据的值,则返回true。
用此代码来完成单项选择
if (GUI.changed)
{
if (toggle0 && !ischange[0])
{
toggle1 = false;
toggle2 = false;
toggle3 = false;
ischange = new bool[] { true, false, false, false };
}
if (toggle1 && !ischange[1])
{
toggle0 = false;
toggle2 = false;
toggle3 = false;
ischange = new bool[] { false, true, false, false };
}
if (toggle2 && !ischange[2])
{
toggle1 = false;
toggle0 = false;
toggle3 = false;
ischange = new bool[] { false, false, true, false };
}
if (toggle3 && !ischange[3])
{
toggle1 = false;
toggle2 = false;
toggle0 = false;
ischange = new bool[] { false, false, false, true };
}
}
网友评论