Your question is not related to RoboSpice per say. You should not use a Dialog, as it may leak its window... As it is in your case :)
It's quite difficult to do it well. That's why Google introduced DialogFragments. As you will see in the docs, DialogFragments are quite easy to use, you will basically wrap a dialog inside a Fragment.
This way, the FragmentManager will manage the life cycle of the dialog in pace with the life cycle of the activity.