SayHi Translate is a universal iOS app that can recognize 23 languages or dialects, plus another 9 languages for which the app can recognize text and then translate and speak. SayHi Translate is currently on sale for 99 cents, down from its regular $2.99 price.
Take a look at the video below to see SayHi Translate in action. In my admittedly short time with the app, I found its speech recognition was reasonably accurate as long as I spoke slowly and clearly. It's helpful that you can also type out lines and edit previously spoken lines that the app may have recorded incorrectly.
Not shown in the video are two other features worth mentioning briefly: favorites and sharing. Let's say you are traveling and are constantly asking, "Where is a good place to eat?" You can add that line to your favorites by tapping on the line and tapping the star button. You can then access your favorite blurbs from the star button in the upper-left corner of the app. And I can't imagine a scenario in which you'd need to share a translated conversation, but should you find such sharing necessary, you can hit the share button at the top of a conversation to select a few lines or the whole thing to share via e-mail, text, Twitter, or Facebook.
One last note: SayHi Translate requires an Internet connection to work its magic.