此脚本挂在Panel上,把InputField拖入inputFields里
public class InputNavigator : MonoBehaviour
{private EventSystem eventsystem;
public InputField[] inputFields;
public int index = 0;
void Start()
{
eventsystem = EventSystem.current;
eventsystem.SetSelectedGameObject(inputFields[index].gameObject, new BaseEventData(eventsystem));
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Tab))
{
index++;
if (index >= inputFields.Length)
{
index = 0;
}
eventsystem.SetSelectedGameObject(inputFields[index].gameObject, new BaseEventData(eventsystem));
}
}
}
此脚本挂在InputField上,index为InputField的顺序
public int index;
public void OnSelect(BaseEventData eventData)
{
//对LoginPanel身上的InputNavigator脚本中的index赋值
this.transform.parent.GetComponent<InputNavigator>().index = index;
}