It is no secret that not all WordPress themes are optimized for all devices and browsers. You could always use premium plugins such as WP Touch to display a mobile theme to your mobile visitors. Plugins such as UserAgent Themes Switcher can also help you serve the right theme on the right device. This script lets you select which theme should be shown on different platforms.
This plugin lets you switch your theme based on the user agent. It works for up to 7 different devices. For complex scenarios, you could always use regular expressions. This is a free script.