ISurfaceHolder.LockCanvas Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| LockCanvas() |
Comece a editar os pixels na superfície. |
| LockCanvas(Rect) |
Assim como |
LockCanvas()
Comece a editar os pixels na superfície.
[Android.Runtime.Register("lockCanvas", "()Landroid/graphics/Canvas;", "GetLockCanvasHandler:Android.Views.ISurfaceHolderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Android.Graphics.Canvas? LockCanvas();
[<Android.Runtime.Register("lockCanvas", "()Landroid/graphics/Canvas;", "GetLockCanvasHandler:Android.Views.ISurfaceHolderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member LockCanvas : unit -> Android.Graphics.Canvas
Retornos
Uso da tela para desenhar na superfície.
- Atributos
Comentários
Comece a editar os pixels na superfície. A Tela retornada pode ser usada para desenhar no bitmap da superfície. Um valor nulo será retornado se a superfície não tiver sido criada ou não puder ser editada. Normalmente, você precisará implementar Callback#surfaceCreated Callback.surfaceCreated para descobrir quando o Surface está disponível para uso.
O conteúdo do Surface nunca é preservado entre unlockCanvas() e lockCanvas(), por esse motivo, cada pixel dentro da área Surface deve ser gravado. A única exceção a essa regra é quando um retângulo sujo é especificado, nesse caso, pixels não sujos serão preservados.
Se você chamar isso repetidamente quando o Surface não estiver pronto (antes Callback#surfaceCreated Callback.surfaceCreated ou depoisCallback#surfaceDestroyed Callback.surfaceDestroyed), suas chamadas serão limitadas a uma taxa lenta, a fim de evitar o consumo de CPU.
Se nulo não for retornado, essa função conterá internamente um bloqueio até a chamada correspondente #unlockCanvasAndPost , impedindo SurfaceView a criação, destruição ou modificação da superfície enquanto ela estiver sendo desenhada. Isso pode ser mais conveniente do que acessar o Surface diretamente, pois você não precisa fazer sincronização especial com um thread de desenho.Callback#surfaceDestroyed Callback.surfaceDestroyed
Documentação Java para android.view.SurfaceHolder.lockCanvas().
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.
Aplica-se a
LockCanvas(Rect)
Assim como #lockCanvas() , mas permite a especificação de um retângulo sujo.
[Android.Runtime.Register("lockCanvas", "(Landroid/graphics/Rect;)Landroid/graphics/Canvas;", "GetLockCanvas_Landroid_graphics_Rect_Handler:Android.Views.ISurfaceHolderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Android.Graphics.Canvas? LockCanvas(Android.Graphics.Rect? dirty);
[<Android.Runtime.Register("lockCanvas", "(Landroid/graphics/Rect;)Landroid/graphics/Canvas;", "GetLockCanvas_Landroid_graphics_Rect_Handler:Android.Views.ISurfaceHolderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member LockCanvas : Android.Graphics.Rect -> Android.Graphics.Canvas
Parâmetros
- dirty
- Rect
Área da Surface que será modificada.
Retornos
Uso da tela para desenhar na superfície.
- Atributos
Comentários
Assim como #lockCanvas() , mas permite a especificação de um retângulo sujo. Cada pixel dentro desse retângulo deve ser gravado; no entanto, pixels fora do retângulo sujo serão preservados pela próxima chamada para lockCanvas().
Documentação Java para android.view.SurfaceHolder.lockCanvas(android.graphics.Rect).
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.