# ActivityPanelEntity

Artifact: [androidx.xr.scenecore:scenecore](https://developer.android.com/jetpack/androidx/releases/xr-scenecore) [View Source](https://cs.android.com/search?q=file:androidx/xr/scenecore/ActivityPanelEntity.kt+class:androidx.xr.scenecore.ActivityPanelEntity) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/xr-scenecore#1.0.0)

*** ** * ** ***


```
class ActivityPanelEntity : PanelEntity
```

<br />

|---|---|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||||
| ↳ | [androidx.xr.scenecore.BaseScenePose](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose) ||||
|   | ↳ | [androidx.xr.scenecore.Entity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity) |||
|   |   | ↳ | [androidx.xr.scenecore.PanelEntity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity) ||
|   |   |   | ↳ | [androidx.xr.scenecore.ActivityPanelEntity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity) |

*** ** * ** ***

ActivityPanelEntity creates a spatial panel for embedding an `https://developer.android.com/reference/android/app/Activity.html` in Android XR. Users can either use an `https://developer.android.com/reference/android/content/Intent.html` to launch an Activity in the given panel or provide an instance of Activity to move into this panel. In order to launch and embed an activity, `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/SpatialCapability#EMBED_ACTIVITY()` capability is required. When this Entity is destroyed it will destroy the underlying Activity.

## Summary

| ### Public companion functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity` | `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity#create(androidx.xr.runtime.Session,androidx.xr.runtime.math.IntSize2d,kotlin.String,androidx.xr.runtime.math.Pose,androidx.xr.scenecore.Entity)( session: https://developer.android.com/reference/kotlin/androidx/xr/runtime/Session, pixelDimensions: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/IntSize2d, name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, pose: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose, parent: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity? )` Public factory function for a spatial ActivityPanelEntity. |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity#startActivity(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` Starts an `https://developer.android.com/reference/android/app/Activity.html` in the given panel. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity#transferActivity(android.app.Activity)(activity: https://developer.android.com/reference/android/app/Activity.html)` Transfers the given `https://developer.android.com/reference/android/app/Activity.html` into this panel. |

### Inherited functions

From [androidx.xr.scenecore.BaseScenePose](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose) `open suspend https://developer.android.com/reference/kotlin/androidx/xr/scenecore/HitTestResult?` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#hitTest(androidx.xr.runtime.math.Vector3,androidx.xr.runtime.math.Vector3)(origin: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, direction: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3)`

Perform a hit test from the specified origin in the specified direction into the Scene.
`open suspend https://developer.android.com/reference/kotlin/androidx/xr/scenecore/HitTestResult?` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#hitTest(androidx.xr.runtime.math.Vector3,androidx.xr.runtime.math.Vector3,kotlin.Int)(origin: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, direction: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, hitTestFilter: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`

Creates a hit test from the specified origin in the specified direction into the scene.
`open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#transformDirectionTo(androidx.xr.runtime.math.Vector3,androidx.xr.scenecore.ScenePose)(direction: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, destination: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ScenePose)`

Transforms a direction from this ScenePose's local space to the destination ScenePose's local space.
`open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#transformPoseTo(androidx.xr.runtime.math.Pose,androidx.xr.scenecore.ScenePose)(pose: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose, destination: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ScenePose)`

Returns a `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` relative to this ScenePose, transformed into a Pose relative to the destination.
`open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#transformPositionTo(androidx.xr.runtime.math.Vector3,androidx.xr.scenecore.ScenePose)(position: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, destination: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ScenePose)`

Transforms a position from this ScenePose's local space to the destination ScenePose's local space.
`open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#transformVectorTo(androidx.xr.runtime.math.Vector3,androidx.xr.scenecore.ScenePose)(vector: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3, destination: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ScenePose)`

Transforms a vector from this ScenePose's local space to the destination ScenePose's local space.
From [androidx.xr.scenecore.Entity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#addChild(androidx.xr.scenecore.Entity)(child: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity)`

Sets an Entity to be a child of this Entity in the scene graph.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#addComponent(androidx.xr.scenecore.Component)(component: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Component)`

Adds a Component to this Entity.
`@https://developer.android.com/reference/kotlin/androidx/annotation/FloatRange(from = 0.0, to = 1.0) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getAlpha(androidx.xr.scenecore.Space)(relativeTo: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space)`

Returns the alpha transparency set for this Entity, relative to given Space.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Component>` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getComponents()()`

Retrieves all components attached to this Entity.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<T>` `<T : https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Component> https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getComponentsOfType(java.lang.Class)(type: https://developer.android.com/reference/java/lang/Class.html<T>)`

Retrieves all Components of the given type `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getComponentsOfType(java.lang.Class)` and its subtypes attached to this Entity.
`open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getPose(androidx.xr.scenecore.Space)(relativeTo: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space)`

Returns the `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` for this Entity, relative to the provided `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space`.
`open @https://developer.android.com/reference/kotlin/androidx/annotation/FloatRange(from = 0.0) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#getScale(androidx.xr.scenecore.Space)(relativeTo: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space)`

Returns the scale of this entity, relative to given space.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#isEnabled(kotlin.Boolean)(includeParents: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)`

Returns the enabled status of this Entity.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#removeAllComponents()()`

Remove all components from this Entity.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#removeComponent(androidx.xr.scenecore.Component)(component: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Component)`

Removes the given Component from this Entity.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#setAlpha(kotlin.Float)(alpha: @https://developer.android.com/reference/kotlin/androidx/annotation/FloatRange(from = 0.0, to = 1.0) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)`

Sets the alpha transparency of the Entity relative to the parent Space.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#setEnabled(kotlin.Boolean)(enabled: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)`

Sets the local enabled state of this Entity.
`open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#setPose(androidx.xr.runtime.math.Pose,androidx.xr.scenecore.Space)(pose: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose, relativeTo: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space)`

Sets the `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` for this Entity.
`open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#setScale(kotlin.Float,androidx.xr.scenecore.Space)(scale: @https://developer.android.com/reference/kotlin/androidx/annotation/FloatRange(from = 0.0) https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, relativeTo: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Space)`

Sets the scale of this Entity relative to the given Space.
From [androidx.xr.scenecore.PanelEntity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity) `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PerceivedResolutionResult` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#getPerceivedResolution(androidx.xr.arcore.RenderViewpoint)(renderViewpoint: https://developer.android.com/reference/kotlin/androidx/xr/arcore/RenderViewpoint)`

Gets the perceived resolution of this Entity in the provided `https://developer.android.com/reference/kotlin/androidx/xr/arcore/RenderViewpoint`.
`https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#transformNormalizedCoordinatesToLocalPosition(androidx.xr.runtime.math.Vector2)(coordinates: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector2)`

Gets the 3D position of a 2D normalized extent coordinate within the entity's local space.
`https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector3` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#transformPixelCoordinatesToLocalPosition(androidx.xr.runtime.math.Vector2)(coordinates: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Vector2)`

Gets the 3D position of a 2D pixel coordinate within the entity's local space.

### Inherited properties

From [androidx.xr.scenecore.BaseScenePose](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose) `open https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/BaseScenePose#poseInActivitySpace()`

The current `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` relative to the activity space root.
From [androidx.xr.scenecore.Entity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity>` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#children()`

Provides the list of all children of this entity.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-char-sequence/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#contentDescription()`

Alternate text for this Entity to be consumed by Accessibility systems.
`open https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity?` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity#parent()`

The parent of this Entity, from which this Entity will inherit most of its properties.
From [androidx.xr.scenecore.PanelEntity](https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#cornerRadius()`

The corner radius of the PanelEntity, in meters.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#isMainPanelEntity()`

True if this panel is the [MainPanelEntity](https://developer.android.com/develop/xr/jetpack-xr-sdk/work-with-entities), false otherwise.
`https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/FloatSize2d` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#size()`

The dimensions of this PanelEntity in local space, in units relative to the scale of this Entity's parent.
`https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/IntSize2d` `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/PanelEntity#sizeInPixels()`

The dimensions of this PanelEntity, in pixels, which is the resolution of the underlying surface.

## Public companion functions

### create

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/xr-scenecore#1.0.0)

```
fun create(
    session: Session,
    pixelDimensions: IntSize2d,
    name: String,
    pose: Pose = Pose.Identity,
    parent: Entity? = null
): ActivityPanelEntity
```

Public factory function for a spatial ActivityPanelEntity.

| Parameters |
|---|---|
| `session: https://developer.android.com/reference/kotlin/androidx/xr/runtime/Session` | XR `https://developer.android.com/reference/kotlin/androidx/xr/runtime/Session` to create the ActivityPanelEntity. |
| `pixelDimensions: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/IntSize2d` | Bounds for the panel surface in pixels. |
| `name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | Name of the panel. |
| `pose: https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose = Pose.Identity` | `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose` of this entity relative to its parent, the default value is `https://developer.android.com/reference/kotlin/androidx/xr/runtime/math/Pose#Identity()`. |
| `parent: https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity? = null` | Parent entity. Defaults to `null`. If `null`, the entity is created but not attached to the scene graph, meaning it will be invisible. If a parent entity (e.g., `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivitySpace` or any other `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity` already present in the scene) is assigned later, the entity will become visible (provided it is enabled). This allows for `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Entity` pre-configuration before making it visible. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/ActivityPanelEntity` | an ActivityPanelEntity instance. |

## Public functions

### startActivity

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/xr-scenecore#1.0.0)

```
fun startActivity(intent: Intent): Unit
```

Starts an `https://developer.android.com/reference/android/app/Activity.html` in the given panel. Subsequent calls to this method will replace the already existing Activity in the panel with the new one. The panel will not be visible until an Activity is successfully launched. This will fail if the `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/Scene` does not have the `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/SpatialCapability#EMBED_ACTIVITY()` capability. This method will not provide any information about when the Activity successfully launches.

| Parameters |
|---|---|
| `intent: https://developer.android.com/reference/android/content/Intent.html` | Intent to launch the activity. |

### transferActivity

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/xr-scenecore#1.0.0)

```
fun transferActivity(activity: Activity): Unit
```

Transfers the given `https://developer.android.com/reference/android/app/Activity.html` into this panel. This will fail if the application does not have the `https://developer.android.com/reference/kotlin/androidx/xr/scenecore/SpatialCapability#EMBED_ACTIVITY()` capability.

| Parameters |
|---|---|
| `activity: https://developer.android.com/reference/android/app/Activity.html` | Activity to move into this panel. |