I don't think you should make it visible again until after you call computeFit() and setPosition() so that there is no chance of seeing the image at the wrong size or position.  Its probably okay here, but safer to put it below.