Thanks for the quick replies.
MC73, I couldn't fix my problem with Gravity. Apparently the default Gravity for label text is already Gravity.TOP, which is what I wanted anyway. I tried setting it explicitly, and again immediately after setting TextSize, but it made no difference.
Klaus, I didn't think it relevant to set the TextSize initially, but I tried it anyway as you suggested and it made no difference. Yes, the text does appear at the same place (the line on which the larger text is based) each time, apart from the first time. Once the larger text has been displayed, the smaller text appears at the "same" place. I want to know how I can make the smaller text appear where it did in the first display of the label, ideally without having to re-initialize the label.
I have made a mental note of your comments about the pixel density and the setting of text size, although at the moment I don't understand this area. I am in early days with my Android development and have a lot to learn.
Ron