Is data field AppBase.getSettingView() available on Vivoactive 4s?

The SDK tells me that data fields can implement a settings UI, but I'm not sure how to access it on my vivoactive 4s.

https://developer.garmin.com/connect-iq/core-topics/properties-and-app-settings/

If you want to provide an on-device settings user interface for your watch face or data field, you can implement AppBase.getSettingsView(). getSettingsView() functions similarly to AppBase.getInitialView() where you return a WatchUi.View and WatchUi.InputDelegate pair that can serve as the initial view.

Watch face configuration is available to the user in the system Watch Face menu. Data field configuration is available from the activity menu.

What button do I need to push to access the settings UI for a data field on the watch?  Is there a button I can push to configure a data field that is already in a layout, or are the settings only shown at the time I add the data field to the layout?  Or is this something that lower-end devices do not support?

  • It should be available on all CIQ 3 (>= 3.2.0) devices. According to the docs for getSettingsView(), VA4s is supported.

    On my 5-button Forerunner watch, I can access on-device settings for a data field the following ways:

    - When I initially add the data field to a data page, the watch asks me if I want to configure the data field

    - If a data field with on-device settings is already added to an activity, the activity settings menu has a new entry called "Connect IQ" (IIRC). If I select this entry, I see a list of all CIQ data fields that have on-device settings.

    In your case, you should be able to hold Back to open the activity settings menu

  • Yes, it's available on the va4s.  One thing to keep in mind is that on that device max memory for a DF is 28k and when you add a Settings view that code will take memory, even when you are just using the DF, so you want to keep an eye on memory

  • Thanks, do you have (EDIT "do you know of") an example data field on the Connect IQ store that has on-device configuration?  I've installed a few, but none of them have the on-device configuration, or else I'm unable to find the right button.  They only have settings available in Connect IQ on my phone.

  • Hmm I don't know of any off the top of my head tbh. Can you test with a sideload? I played around with this stuff briefly, and you can return any kind of view you want (obviously getSettingsView() has no way to verify that you've implemented a "settings view"). The only restriction I've seen is that the view won't update without user input (even if you call requestUpdate()) which means that it can't be hijacked for anything useful other than settings or static data.

    So you could return a very simple view that does nothing but clear the screen with a certain background color and/or displays some text.

  • Coming back to this a year later:

    I did confirm the settings are available on Vivoactive 4s.

    I found this datafield with a settings UI: Connect IQ Store | Free Watch Faces and Apps | Garmin

    The confusing thing is that datafield configs are accessible from the *highest-level* menu for an activity type, one level *above* the Settings sub-menu.  If you've added a datafield to a data screen, then on the activity's splashscreen, swipe up, and the menu will show something like these options:

    Workouts
    Intervals
    Training Calendar
    Settings
    ConnectIQ Fields

    That last option lets you configure settings for the datafields.