docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Interface IInputActionCollection2

    An extended version of IInputActionCollection.

    Inherited Members
    IInputActionCollection.bindingMask
    IInputActionCollection.devices
    IInputActionCollection.controlSchemes
    IInputActionCollection.Contains(InputAction)
    IInputActionCollection.Enable()
    IInputActionCollection.Disable()
    IEnumerable<InputAction>.GetEnumerator()
    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
    bindings
    bindings
    bindings

    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.

     Alternatively, the given string can be a GUID as given by <xref href="UnityEngine.InputSystem.InputAction.id" data-throw-if-not-resolved="false"></xref>.
    
    bool throwIfNotFound

    If true, instead of returning null when the action cannot be found, throw ArgumentException.

    Returns
    Type Description
    InputAction

    The action with the corresponding name or null if no matching action could be found.

    Exceptions
    Type Condition
    ArgumentNullException

    actionNameOrId is null.

    ArgumentException

    Thrown if throwIfNotFound is true and the action could not be found. -Or- If actionNameOrId contains a slash but is missing either the action or the map name.

    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 null.

    Returns
    Type Description
    int

    Index into bindings of action of the binding that matches mask. If no binding matches, will return -1.

    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}");

    See Also
    Matches(InputBinding)
    bindings

    Extension Methods

    InputActionRebindingExtensions.LoadBindingOverridesFromJson(IInputActionCollection2, string, bool)
    InputActionRebindingExtensions.RemoveAllBindingOverrides(IInputActionCollection2)
    InputActionRebindingExtensions.SaveBindingOverridesAsJson(IInputActionCollection2)
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)