OK, I had another crack at the IME approach and got it working.
2 problems:
(1) You have to declare and use the IME library from the activity (this was my snag - obvious in retrospect) - ie trap the change in height via IME_HeightChanged event in activity - then notify the class instance via a dedicated method in the class which then can take appropriate actions in the class. This is all very messy, convoluted and decidedly unclassy (if you pardon the very poor pun) - and you have to set it up for every activity in the application.
(2)
It does not serve the purpose of setting up an event to trap when the soft keyboard is closed via the back key being pressed
when the keyboard is floating (see image) because there is no height change of the view.
So another question: is there any way to prevent the keyboard from floating - ie suppress the floating option in the keyboard?
Thanks again...