Interface IInputActionCollection2
An extended version of IInputActionCollection.
Inherited Members
Namespace: UnityEngine.InputSystem
Assembly: Unity.InputSystem.dll
Syntax
public interface IInputActionCollection2 : IInputActionCollection, IEnumerable<InputAction>, IEnumerable
Remarks
This interface will be merged into IInputActionCollection in a future (major) version.
Properties
bindings
Iterate over all bindings in the collection of actions.
Declaration
IEnumerable<InputBinding> bindings { get; }
Property Value
Type | Description |
---|---|
IEnumerable<InputBinding> |
See Also
Methods
FindAction(string, bool)
Find an InputAction in the collection by its name or by its id (in string form).
Declaration
InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false)
Parameters
Type | Name | Description |
---|---|---|
string | actionNameOrId | Name of the action as either a "map/action" combination (e.g. "gameplay/fire") or a simple name. In the former case, the name is split at the '/' slash and the first part is used to find a map with that name and the second part is used to find an action with that name inside the map. In the latter case, all maps are searched in order and the first action that has the given name in any of the maps is returned. Note that name comparisons are case-insensitive.
|
bool | throwIfNotFound | If |
Returns
Type | Description |
---|---|
InputAction | The action with the corresponding name or |
Exceptions
Type | Condition |
---|---|
ArgumentNullException |
|
ArgumentException | Thrown if |
FindBinding(InputBinding, out InputAction)
Find the index of the first binding that matches the given mask.
Declaration
int FindBinding(InputBinding mask, out InputAction action)
Parameters
Type | Name | Description |
---|---|---|
InputBinding | mask | A binding. See Matches(InputBinding) for details. |
InputAction | action | Receives the action on which the binding was found. If none was found,
will be set to |
Returns
Type | Description |
---|---|
int | Index into bindings of |
Remarks
For details about matching bindings by a mask, see Matches(InputBinding).
var index = playerInput.actions.FindBinding(
new InputBinding { path = "<Gamepad>/buttonSouth" },
out var action);
if (index != -1)
Debug.Log($"The A button is bound to {action}");