First, add logging to each step to view what happens, or debug.
The problem is that you are modifying the string (to create the newString variable). Then you are adding the period to the end and setting this as the new value of the text field. Then you are returning yes (your latter checks don't use the new text field value). So you add the '8' and the period, and then ask the framework to add the '8'.