See blog post Android Developer Tip: Regenerating R.java.
Rather than continuing the discovery of all the conceivable strains of the issue found in the wild, I decided to leverage the tried-and-true approach of staring at the code. Having done so for a while I spotted a few red guys under the res
folder. They were a leftover of my current redesign work that I was about to delete before things went awry. Sure enough, as soon as I hit Del on them the darn R thing automagically reappeared.
In single sentence: Remove all unwanted files from the project and unwanted code from the manifest file.