You're not supposed to put "ask for ID" anyway. If a merchant gets a card with anything but a signature on the *signature* panel, they're supposed to refuse the card. Your options then are 1) signing the card in front of the merchant and providing an ID to verify that signature, or 2) pay with cash.
I canceled my contract with Sprint through the chat option on the website (which only appears during business hours), and you have until the end of the billing cycle in which you canceled to port your number to a different carrier. I'm on T-Mobile now with the same number I had on Sprint.