SphericalGLSurfaceView


@UnstableApi
public final class SphericalGLSurfaceView extends GLSurfaceView


Renders a GL scene in a non-VR Activity that is affected by phone orientation and touch input.

The two input components are the TYPE_GAME_ROTATION_VECTOR Sensor and a TouchListener. The GL renderer combines these two inputs to render a scene with the appropriate camera orientation.

The primary complexity in this class is related to the various rotations. It is important to apply the touch and sensor rotations in the correct order or the user's touch manipulations won't match what they expect.

Summary

Nested types

Listener for the Surface to which video frames should be rendered.

Public constructors

SphericalGLSurfaceView(
    Context context,
    @Nullable AttributeSet attributeSet
)

Public methods

void

Adds a VideoSurfaceListener.

CameraMotionListener

Returns the CameraMotionListener that should be registered during playback.

VideoFrameMetadataListener

Returns the VideoFrameMetadataListener that should be registered during playback.

@Nullable Surface

Returns the Surface to which video frames should be rendered, or null if it has not been created.

void
void
void

Removes a VideoSurfaceListener.

void

Sets the default stereo mode.

void
setUseSensorRotation(boolean useSensorRotation)

Sets whether to use the orientation sensor for rotation (if available).

Protected methods

void

Inherited Constants

From android.opengl.GLSurfaceView
static final int
static final int
static final int
static final int
From android.view.SurfaceView
static final int
static final int
static final int
From android.view.View
static final int
static final int
static final int
static final int
static final int
static final int
static final Property<ViewFloat>
static final int
static final String
AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE = "creditCardExpirationDate"
static final String
AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY = "creditCardExpirationDay"
static final String
AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH = "creditCardExpirationMonth"
static final String
AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR = "creditCardExpirationYear"
static final String
static final String
AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE = "creditCardSecurityCode"
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int
static final int
static final int
static final int
static final int
static final int
static final int[]
static final int[]
static final int[]
static final int[]
static final int
static final int
static final int
static final int
static final int
static final int
static final int
GONE = 8
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
KEEP_SCREEN_ON = 67108864
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
NO_ID = -1
static final int
static final int
static final int
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final int[]
static final float
static final float
static final float
static final float
static final float
static final Property<ViewFloat>
static final Property<ViewFloat>
static final Property<ViewFloat>
static final Property<ViewFloat>
static final Property<ViewFloat>
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int[]
static final int[]
static final int
static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int

This field is deprecated.

static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final Property<ViewFloat>
static final Property<ViewFloat>
static final Property<ViewFloat>
static final String
VIEW_LOG_TAG = "View"
static final int
static final int[]
static final Property<ViewFloat>
static final Property<ViewFloat>
static final Property<ViewFloat>

Inherited methods

From android.opengl.GLSurfaceView
void
int
boolean
int
void
void
void
void
setDebugFlags(int debugFlags)
void
void
void
void
void
void
setPreserveEGLContextOnPause(boolean preserveOnPause)
void
setRenderMode(int renderMode)
void
void
surfaceChanged(SurfaceHolder holder, int format, int w, int h)
void
void
void

This method is deprecated.

void
From android.view.SurfaceView
void
void
void
void
draw(Canvas canvas)
boolean
CharSequence
SurfaceControlViewHost.SurfacePackage
int
SurfaceHolder
IBinder

This method is deprecated.

int
SurfaceControl
boolean
void
onFocusChanged(
    boolean gainFocus,
    int direction,
    Rect previouslyFocusedRect
)
void
onMeasure(int widthMeasureSpec, int heightMeasureSpec)
boolean
onSetAlpha(int alpha)
void
onWindowVisibilityChanged(int visibility)
void
setAlpha(float alpha)
void
void
setClipBounds(Rect clipBounds)
void
setCompositionOrder(int compositionOrder)
void
setDesiredHdrHeadroom(float desiredHeadroom)
void
setSecure(boolean isSecure)
void
setSurfaceLifecycle(int lifecycleStrategy)
void
setVisibility(int visibility)
void
setZOrderMediaOverlay(boolean isMediaOverlay)
void
setZOrderOnTop(boolean onTop)
From android.view.View
void
void
addExtraDataToAccessibilityNodeInfo(
    AccessibilityNodeInfo info,
    String extraDataKey,
    Bundle arguments
)
void
addFocusables(ArrayList<View> views, int direction)
void
void
void
void
void
ViewPropertyAnimator
void

This method is deprecated.

void
boolean
void
void

This method is deprecated.

void
boolean
boolean
boolean
boolean
boolean
canScrollHorizontally(int direction)
boolean
canScrollVertically(int direction)
final void
void
final void
boolean
void
void
void
void
static int
combineMeasuredStates(int curState, int newState)
int
int
int
void
WindowInsets
int
int
int
AccessibilityNodeInfo