IWindowManager.TransferTouchGesture Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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>
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.