This is actually why I chose to start learning Java. I wanted something cross-platform and it was also free! Of course, I can't code for iOS devices, but I have started learning to program for Android devices, since that utilizes Java as well. It has made me consider switching to an Android phone as well, actually.
Another thing is that I've read that the learning curve for XCode is a bit steep, although that was before the latest version. When I was purchasing lab equipment for my current job, I had to decide between taking the plunge into XCode or to learn Android programming (I am going to use tablets for my experiments). What I read pushed me towards Android, despite my appreciation of all things Apple.