docs.unity.cn
    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()
    Namespace: UnityEngine.InputSystem
    Syntax
    public interface IInputActionCollection2 : IInputActionCollection, IEnumerable<InputAction>
    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, Boolean)

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

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

    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
    Int32

    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.RemoveAllBindingOverrides(IInputActionCollection2)
    InputActionRebindingExtensions.SaveBindingOverridesAsJson(IInputActionCollection2)
    InputActionRebindingExtensions.LoadBindingOverridesFromJson(IInputActionCollection2, String, Boolean)
    Back to top Copyright © 2022 Unity Technologies
    Generated by DocFX
    on Wednesday, January 5, 2022
    Terms of use