DirectionPad SF Symbols and remapping issues

We want to use the gamepad's direction pad directions SF Symbols on our game UI and make it change according to user's remapping settings. Something like "Press [DPAD-RIGHT] to open the menu"

Although there are SF Symbols for direction pad directions ("dpad.down.fill", "dpad.up.fill", "dpad.left.fill" and "dpad.right.fill"), apparently there's no controller button name constant for these buttons. According to the documentation, there's only GCInputDirectionPad.

If no remapping was done, I assume that the GCInputDirectionPad's correspondent sfSymbolName is "dpad" and I can append the direction to that name in order to get the correct SF Symbol from the system..

However, if the user remaps the dpad to some analog, for example the left one, the sfSymbolName for GCInputDirectionPad will probably be "l.joystick" and there's no SF Symbol that can match the joystick right direction.

Is there any button name constant for a specific dpad direction, like dpad right, that we could use and avoid appending strings?

Also, how can we show a analog direction using symbols, supposing the dpad was remapped to a analog stick?


Replies

After testing, I found out that when the Directional Pad is remapped to a analog stic,k the correspondent GCControllerElement returns nil for the sfSymbolsName attribute, which means we can not show the joystick symbol at all in this case...

That's pretty frustrating actually. How can we show the remapped symbol?

For the record, I'm testing on iOS 14.0.1.
Still an issue on 14.3. I will file a bug report.