Langue

IWindowManager.TransferTouchGesture Méthode

Définition

Transférez le mouvement tactile en cours du transfertFromToken vers le transferToToken.

[Android.Runtime.Register("transferTouchGesture", "(Landroid/window/InputTransferToken;Landroid/window/InputTransferToken;)Z", "GetTransferTouchGesture_Landroid_window_InputTransferToken_Landroid_window_InputTransferToken_Handler:Android.Views.IWindowManager, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=35)]
public virtual bool TransferTouchGesture(Android.Window.InputTransferToken transferFromToken, Android.Window.InputTransferToken transferToToken);
[<Android.Runtime.Register("transferTouchGesture", "(Landroid/window/InputTransferToken;Landroid/window/InputTransferToken;)Z", "GetTransferTouchGesture_Landroid_window_InputTransferToken_Landroid_window_InputTransferToken_Handler:Android.Views.IWindowManager, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=35)>]
abstract member TransferTouchGesture : Android.Window.InputTransferToken * Android.Window.InputTransferToken -> bool
override this.TransferTouchGesture : Android.Window.InputTransferToken * Android.Window.InputTransferToken -> bool

Paramètres

transferFromToken
InputTransferToken

InputTransferToken pour le mouvement actif

transferToToken
InputTransferToken

InputTransferToken pour transférer le mouvement vers.

Retours

Indique si le flux tactile a été transféré.

Attributs

Remarques

Transférez le mouvement tactile en cours du transfertFromToken vers le transferToToken.

<br> Cela nécessite que fromToken et toToken soient associés les uns aux autres. L’association peut être effectuée de différentes façons, selon la façon dont la fenêtre incorporée est créée. <ul><li> Creating a SurfaceControlViewHost and passing the host’s InputTransferToken for SurfaceControlViewHost#SurfaceControlViewHost(Context, Display, InputTransferToken). </li li><> Registering a SurfaceControl for input and passing the host’s token to the or#registerBatchedSurfaceControlInputReceiver(InputTransferToken, SurfaceControl, Choreographer, SurfaceControlInputReceiver)#registerUnbatchedSurfaceControlInputReceiver(InputTransferToken, SurfaceControl, Looper, SurfaceControlInputReceiver). </li></ul>

L’hôte est susceptible d’être un AttachedSurfaceControl jeton hôte qui peut être récupéré via AttachedSurfaceControl#getInputTransferToken().

<br> Lorsque l’hôte souhaite transférer le mouvement tactile vers l’élément incorporé, il peut récupérer le jeton incorporé via SurfaceControlViewHost.SurfacePackage#getInputTransferToken() ou utiliser la valeur retournée à partir de l’un ou l’autre #registerBatchedSurfaceControlInputReceiver(InputTransferToken, SurfaceControl, Choreographer, SurfaceControlInputReceiver) , #registerUnbatchedSurfaceControlInputReceiver(InputTransferToken, SurfaceControl, Looper, SurfaceControlInputReceiver) et transmettre son propre jeton en tant que transferFromToken.

Lorsque l’incorporé souhaite transférer le mouvement tactile vers l’hôte, il peut passer son propre jeton en tant que transferFromToken et utiliser l’hôte InputTransferToken associé comme transferToToken

<br> Lorsque l’interaction tactile est transférée, la fenêtre qui reçoit actuellement l’interaction tactile obtient une ACTION_CANCEL et ne reçoit aucun autre événement d’entrée pour ce mouvement.

La fenêtre transférée reçoit un événement ACTION_DOWN, puis le reste des événements d’entrée pour ce mouvement. Il ne reçoit aucun des événements précédents de ce mouvement reçus par la fenêtre d’origine.

L’API transferTouchGesture fonctionne uniquement pour le mouvement actuel. Lorsqu’un nouveau mouvement arrive, le répartiteur d’entrée effectue une nouvelle série de tests de positionnement. Par conséquent, si la fenêtre hôte est toujours la première chose qui est touchée, elle recevra de nouveau le nouveau mouvement. Il sera de nouveau à l’hôte pour transférer ce nouveau mouvement vers l’incorporé.

<br> L’appel peut échouer pour les raisons suivantes : <ul><li> Caller tente de transférer le mouvement tactile à partir d’un jeton qui n’a pas de mouvement actif. </li li><> Le mouvement est transféré vers un jeton qui n’est pas associé au transfertFromToken. Par exemple, si l’appelant transfère vers une SurfaceControlViewHost fenêtre hôte non attachée via SurfaceView#setChildSurfacePackage(SurfacePackage). </li li><> Le mouvement actif se termine avant la fin du transfert, par exemple dans le cas d’un fling. </li></ul>

Java documentation pour android.view.WindowManager.transferTouchGesture(android.window.InputTransferToken, android.window.InputTransferToken).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à