Issue title: Switching between TextInputs with values does something funny to the keyboard
 Issue body: <!--
  PLEASE DON'T DELETE THIS TEMPLATE UNTIL YOU HAVE READ THE FIRST SECTION.
-->

### Is this a bug report?

Yes

<!--
  If you answered "Yes":

    We expect that it will take you about 30 minutes to produce a high-quality bug report.
    While this may seem like a lot, putting care into issues helps us fix them faster.
    For bug reports, it is REQUIRED to fill the rest of this template, or the issue will be closed.

  If you answered "No":

    We use GitHub Issues exclusively for tracking bugs in React Native. If you're looking for help,
    the Community page at http://facebook.github.io/react-native/support.html list various resources 
    that should help you get started.

  Now scroll below!
-->

### Have you read the [Contributing Guidelines](https://facebook.github.io/react-native/docs/contributing.html)?

Yes 👍 

### Environment

<!--
  In your terminal run `react-native info` and paste its contents here. Next, specify your target platform, like this:

  Environment:
    OS:  macOS Sierra 10.12.6
    Node:  8.4.0
    Yarn:  0.27.5
    npm:  5.4.0
    Watchman:  4.7.0
    Xcode:  Xcode 8.3.3 Build version 8E3004b
    Android Studio:  2.3 AI-162.4069837

  Packages: (wanted => installed)
    react-native: 0.48.1 => 0.48.1
    react: 16.0.0-alpha.12 => 16.0.0-alpha.12

  Target Platform: iOS (10.3)

  ***Make sure you are on v0.48.0 or greater of react-native, otherwise you may get this error:

  Unrecognized command 'info'
  Run react-native --help to see list of all available commands
-->

Environment:
  OS: macOS Sierra 10.12.6
  Node: 8.1.0
  Yarn: 0.19.1
  npm: 5.5.1
  Watchman: 4.6.0
  Xcode: Xcode 9.0 Build version 9A235
  Android Studio: Not Found

Packages: (wanted => installed)
  react: ^16.0.0-beta.5 => 16.0.0-beta.5
  react-native: ^0.49.5 => 0.49.5

### Steps to Reproduce

<!--
  How would you describe your issue to someone who doesn’t know you or your project?
  Try to write a sequence of steps that anybody can repeat to see the issue.
  Be specific! If the bug cannot be reproduced, your issue may be closed.
-->

(Write your steps here:)

1. Add two simple `<TextInput />` ( can even use react natives [example](https://facebook.github.io/react-native/docs/textinput.html) )
2. Make sure both `<TextInput />` have values in them and autoCapitalize is set to `default`
3. Then switch between the two inputs ( better tested on a phone ).
### Expected Behaviour

<!--
  How did you expect your project to behave?
  It’s fine if you’re not sure your understanding is correct.
  Just write down what you thought would happen.
-->

Simply when focusing on a new `<TextInput />` with a value, the keyboard should not shift from Uppercase to Lowercase

### Actual Behaviour

<!--
  Did something go wrong?
  Is something broken, or not behaving as you expected?
  Describe this section in detail, and attach screenshots if possible.
  Don't just say "it doesn't work"!
-->

When navigating between the two `TextInput` components the keyboard for some reason starts with uppercase keyboard, then quickly changes to lowercase.

Example below is a bare bone of react native using Expo.

 
![gif](https://user-images.githubusercontent.com/9655830/32782410-39c750ca-c940-11e7-8dfb-78044e0c812e.gif)


### Reproducible Demo

<!--
  Please share a project that reproduces the issue.
  There are two ways to do it:

    * Create a new app using https://snack.expo.io/ and try to reproduce the issue in it.
      This is useful if you roughly know where the problem is, or can’t share the real code.

    * Or, copy your app and remove things until you’re left with the minimal reproducible demo.
      This is useful for finding the root cause. You may then optionally create a Snack.

  This is a good guide to creating bug demos: https://stackoverflow.com/help/mcve
  Once you’re done, copy and paste the link to the Snack or a public GitHub repository below:
-->

[Link to simple demo](https://snack.expo.io/r1B7TDOyM)
Continually tap between the two `<TextInputs/>` and you should notice the keyboard flickers between uppercase and lowercase.

<!--
  What happens if you skip this step?

  Someone will read your bug report, and maybe will be able to help you,
  but it’s unlikely that it will get much attention from the team. Eventually,
  the issue will likely get closed in favor of issues that have reproducible demos.

  Please remember that:

    * Issues without reproducible demos have a very low priority.
    * The person fixing the bug would have to do that anyway. Please be respectful of their time.
    * You might figure out the issues yourself as you work on extracting it.

  Thanks for helping us help you!
-->

 Comments: 
 Comment 0: Hi @KirMcC, I think you missed that you are changing the first input in the setState on both text inputs.
```javascript
_handleTextChange = inputValue => {
    this.setState({ inputValue });
};
```
see your modified [demo](https://snack.expo.io/H1nPUcO1f).
 Comment 1: Ah my bad on that part @omar-dev . But doesn't fix the issue :(. Still set's the keyboard to uppercase first then switches to lowercase. Only if you have values in the `TextInputs` components and `autoCapitalize` is set to `default`. Setting the inputs to autoCapitalize ='none' doesn't bug out the keyboard, but I can't have all inputs set like this.

I'm still able to input/update values okay, but seeing the keyboard flicker when focusing on the next input looks terrible.
 Comment 2: @KirMcC yes I missed that one, hope it got fixed soon. 
Thanks.
 Comment 3: This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. If you think this issue should definitely remain open, please let us know why. Thank you for your contributions.

{'source': 'GithubIssues', 'repo_name_with_owner': 'facebook/react-native', 'issue_id': 273793612, 'repo_stars': 114786.0}