Skip to content

Distance RC Widget

Siddharth Utgikar edited this page Dec 22, 2020 · 4 revisions

The Distance RC Widget is a TEXT type of Base Telemetry Widget. It shows the distance between the current location of the aircraft and the location of the RC (pilot).

State Image
Disconnected
Metric Unit System
Imperial Unit System

Usage

<dji.ux.beta.core.widget.distancerc.DistanceRCWidget
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" />

Customizations

The UI elements can be customized to match the style of the user's application. The widget supports all the Text Customizations provided in the Base Telemetry Widget.

XML Example

<dji.ux.beta.core.widget.distancerc.DistanceRCWidget
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        app:uxsdk_label_text_color="@color/black"
        app:uxsdk_value_text_color="@color/blue"
        app:uxsdk_unit_text_color="@color/blue"/>
State Image
Disconnected
Metric Unit System
Imperial Unit System

Kotlin Example

val distanceRCWidget = DistanceRCWidget(context)
distanceRCWidget.setBackgroundColor(resources.getColor(R.color.white))
distanceRCWidget.labelTextColor = resources.getColor(R.color.black)
distanceRCWidget.valueTextColor = resources.getColor(R.color.blue)
distanceRCWidget.unitTextColor = resources.getColor(R.color.blue)

Java Example

DistanceRCWidget distanceRCWidget = new DistanceRCWidget(this);
distanceRCWidget.setBackgroundColor(getResources().getColor(R.color.white));
distanceRCWidget.setLabelTextColor(getResources().getColor(R.color.black));
distanceRCWidget.setValueTextColor(getResources().getColor(R.color.blue));
distanceRCWidget.setUnitTextColor(getResources().getColor(R.color.blue));

Hooks

The widget provides hooks for the users to add functionality based on the state changes in the widget. The DistanceRCWidget provides the following hooks

  1. ModelState - Provides hooks in events received by the widget from the widget model.
    • data class ProductConnected(val isConnected: Boolean) : ModelState() - Event when the product is connected or disconnected.
    • data class DistanceRCStateUpdated(val distanceRCState: DistanceRCState) : ModelState() - Event when distance to RC state is updated.

The user can subscribe to this using public override fun getWidgetStateUpdate(): Flowable<ModelState>.

Clone this wiki locally