UMG Navigation Help


I am currently make a UI system with UMG and was wondering what the best practices are when it comes to navigating UMG elements with a controller. I am not massively experienced with UMG and this is not something I have yet had to tackle. I have done some investigation but so far haven’t found anything massively conclusive.

I have seen that each UMG widget has a section labelled navigation with some options that appear to be bound to what look like input events (left, right, next, previous) but I cannot find any documentation on how this system works or any functions that reference these. It is possible I just haven’t been looking in the right place.

So as I have not been able to find any documentation on what I have described above I assume that I will have to make a more manual approach and handle the navigation between different widgets myself. And currently I am struggling to figure out how I could achieve this. I will use an example to better explain my question:

If I have one canvas panel that contains 3 individual scroll boxes that are laid out horizontally next to each other, with a vertical scroll, each with an individual grid panel childed to. I Would like in theory to be able to select individual elements inside of the grid panel, and be able to break away from the grid contained in the scroll box and change focus to the next scroll box. So scrolling up or down to a widget that isnt visible in the grid causes the scroll box to move towards it until the item is visible. Scrolling left or right selects elements in the grid but if you reach the bounds of the grid/ scroll box, focus is switched to the widget closest to the direction inputted by the controller.

if anyone has any advice or can point me to some documentation or tutorials regarding this, it would be greatly appreciated.

Thanks, Luke.

Yes, you have to do it yourself. The current system is not really usable with just blueprints and UMG. This is the only tutorial I’ve found: He does a hack job, but the general idea seems okay.

There are a couple blueprint functions to scroll scroll boxes (Scroll Widget Into View, Set Scroll Offset), though I haven’t tried them yet myself.