There are many ways to do that. The best way I've seen is to implement a "Displayable stack", or DisplayManager class. Every time you want to load a new screen, you ask the DisplayManager to do it, and it will also add this screen to a stack of Displayables it has. Then when you need to go back you just pop the last Displayable from the stack and voila!
The stack mentioned is just the built-in Stack class of CLDC. That is a subclass of Vector. Then in your implementation, it is a static class or member of a class. Nothing very special, actually. You push and pop your latest Displayable there.
However, I go another approach and make the displayable-where-to-go a private callee member of my instance. This way, I do not have to deal with a globally visible stack which could be changed by anyone.
Both are tricks for LCDUI. But you are in LWUIT, aren’t you?