Class OnScreenControl | Package Manager UI website
docs.unity.cn
    Show / Hide Table of Contents

    Class OnScreenControl

    Base class for on-screen controls.

    Inheritance
    System.Object
    OnScreenControl
    OnScreenButton
    OnScreenStick
    Namespace: UnityEngine.InputSystem.Plugins.OnScreen
    Syntax
    public abstract class OnScreenControl : MonoBehaviour
    Remarks

    The set of on-screen controls together forms a device. A control layout is automatically generated from the set and a device using the layout is added to the system when the on-screen controls are enabled.

    The layout that the generated layout is based on is determined by the control paths chosen for each on-screen control. If, for example, an on-screen control chooses the 'a' key from the "Keyboard" layout as its path, a device layout is generated that is based on the "Keyboard" layout and the on-screen control becomes the 'a' key in that layout.

    If a has multiple on-screen controls that reference different types of device layouts (e.g. one control references 'buttonWest' on a gamepad and another references 'leftButton' on a mouse), then a device is created for each type referenced by the setup.

    Properties

    control

    The actual control that is fed input from the on-screen control.

    Declaration
    public InputControl control { get; }
    Property Value
    Type Description
    InputControl
    Remarks

    This is only valid while the on-screen control is enabled. Otherwise, it is null. Also, if no controlPath has been set, this will remain null even if the component is enabled.

    controlPath

    Declaration
    public string controlPath { get; set; }
    Property Value
    Type Description
    System.String

    controlPathInternal

    Declaration
    protected abstract string controlPathInternal { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    Moving the definition of how the control path is stored into subclasses allows them to apply their own InputControlAttribute attributes to them and thus set their own layout filters.

    Methods

    SendValueToControl<TValue>(TValue)

    Declaration
    protected void SendValueToControl<TValue>(TValue value)
        where TValue : struct
    Parameters
    Type Name Description
    TValue value
    Type Parameters
    Name Description
    TValue
    In This Article
    • Properties
      • control
      • controlPath
      • controlPathInternal
    • Methods
      • SendValueToControl<TValue>(TValue)
    Back to top Copyright © 2019 Unity Technologies
    Generated by DocFX