It is getting there -- at least one wallet now already accommodates the ability to create a transaction for spending, regardless of connectivity. (And spends properly, where the change transaction goes right back to the same wallet.)
If you are using My Wallet from Blockchain.info, then you can create a spend transaction offline. Then if the other side has connectivity, takes that transaction and broadcasts it to the bitcoin network:
My Wallet from BlockChain.info
Additionally, because there is so little data traffic necessary, even a weak mobile phone signal that is incapable of carrying voice (e.g., bottom level of the concrete jungle shopping mall) might still provide more than enough bandwidth for a quick transaction.
Bitcoin won't be the only mobile payment system that will be hobbled if either the merchant or the customer won't have reliable connectivity. As well-funded payment systems from Square, PayPal and Google need the ability for their retail partner's customers to be able to always transact then solutions to make sure connectivity is pervasive and reliable will be found. Areas with a weak mobile signal where retail commerce occurs will get attention from the mobile carriers. Alternatively, if the merchant has internet connectivity that could be shared to the customer for use in payments in a manner that is inexpensive and trivially easy for the merchant to provide.
Another method, if you trust the merchant, is a paper wallet approach. Like this:
And related to this topic is an approach augmented with hardware, here: