GLSurfaceView.IRenderer Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Eine generische Rendererschnittstelle.
[Android.Runtime.Register("android/opengl/GLSurfaceView$Renderer", "", "Android.Opengl.GLSurfaceView/IRendererInvoker")]
public interface GLSurfaceView.IRenderer : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/opengl/GLSurfaceView$Renderer", "", "Android.Opengl.GLSurfaceView/IRendererInvoker")>]
type GLSurfaceView.IRenderer = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Attribute
- Implementiert
Hinweise
Eine generische Rendererschnittstelle.
Der Renderer ist dafür verantwortlich, OpenGL-Aufrufe zum Rendern eines Frames zu tätigen.
GLSurfaceView-Clients erstellen in der Regel eigene Klassen, die diese Schnittstelle implementieren, und rufen sie dann auf GLSurfaceView#setRenderer , um den Renderer bei glSurfaceView zu registrieren.
<div class="special reference"><h3>Developer Guides</h3>
Weitere Informationen zur Verwendung von OpenGL finden Sie im OpenGL-Entwicklerhandbuch .
</div>
<h3>Threading</h3> Der Renderer wird für einen separaten Thread aufgerufen, sodass die Renderingleistung vom UI-Thread entkoppelt wird. Clients müssen in der Regel mit dem Renderer aus dem UI-Thread kommunizieren, da hier Eingabeereignisse empfangen werden. Clients können mit jedem der standardbasierten Java Techniken für die threadübergreifende Kommunikation kommunizieren, oder sie können die GLSurfaceView#queueEvent(Runnable) Komfortmethode verwenden.
<h3>EGL Context Lost</h3> Es gibt Situationen, in denen der EGL-Renderingkontext verloren geht. Dies geschieht in der Regel, wenn das Gerät nach dem Einschlafen aufwacht. Wenn der EGL-Kontext verloren geht, werden alle OpenGL-Ressourcen (z. B. Texturen), die diesem Kontext zugeordnet sind, automatisch gelöscht. Damit das Rendering ordnungsgemäß bleibt, muss ein Renderer alle verlorenen Ressourcen neu erstellen, die er noch benötigt. Die #onSurfaceCreated(GL10, EGLConfig) Methode ist ein bequemer Ort, um dies zu tun.
Java Dokumentation für android.opengl.GLSurfaceView.Renderer.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Eigenschaften
| Name | Beschreibung |
|---|---|
| Handle |
Ruft den JNI-Wert des zugrunde liegenden Android-Objekts ab. (Geerbt von IJavaObject) |
| JniIdentityHashCode |
Gibt den Wert |
| JniManagedPeerState |
Status des verwalteten Peers. (Geerbt von IJavaPeerable) |
| JniObjectReferenceControlBlock |
Eine generische Rendererschnittstelle. (Geerbt von IJavaPeerable) |
| JniPeerMembers |
Mitgliedszugriff und Aufrufunterstützung. (Geerbt von IJavaPeerable) |
| PeerReference |
Gibt eine JniObjectReference der umbrochenen Java Objektinstanz zurück. (Geerbt von IJavaPeerable) |
Methoden
| Name | Beschreibung |
|---|---|
| Disposed() |
Wird aufgerufen, wenn die Instanz verworfen wurde. (Geerbt von IJavaPeerable) |
| DisposeUnlessReferenced() |
Wenn keine offenen Verweise auf diese Instanz vorhanden sind, wird nichts aufgerufen |
| Finalized() |
Wird aufgerufen, wenn die Instanz abgeschlossen wurde. (Geerbt von IJavaPeerable) |
| OnDrawFrame(IGL10) |
Wird aufgerufen, um den aktuellen Frame zu zeichnen. |
| OnSurfaceChanged(IGL10, Int32, Int32) |
Wird aufgerufen, wenn die Größe der Oberfläche geändert wurde. |
| OnSurfaceCreated(IGL10, EGLConfig) |
Wird aufgerufen, wenn die Oberfläche erstellt oder neu erstellt wird. |
| SetJniIdentityHashCode(Int32) |
Legen Sie den von |
| SetJniManagedPeerState(JniManagedPeerStates) |
Eine generische Rendererschnittstelle. (Geerbt von IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
Legen Sie den von |
| UnregisterFromRuntime() |
Heben Sie die Registrierung dieser Instanz auf, damit die Laufzeit sie nicht aus zukünftigen Java.Interop.JniRuntime+JniValueManager.PeekValue Aufrufen zurückgibt. (Geerbt von IJavaPeerable) |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Eine generische Rendererschnittstelle. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |