{"action":"closed","issue":{"url":"https://api.github.com/repos/facebook/react-native/issues/18438","repository_url":"https://api.github.com/repos/facebook/react-native","labels_url":"https://api.github.com/repos/facebook/react-native/issues/18438/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react-native/issues/18438/comments","events_url":"https://api.github.com/repos/facebook/react-native/issues/18438/events","html_url":"https://github.com/facebook/react-native/issues/18438","id":306276693,"node_id":"MDU6SXNzdWUzMDYyNzY2OTM=","number":18438,"title":"No way to determine if PickerIOS wheel is moving","user":{"login":"kodayashi","id":916855,"node_id":"MDQ6VXNlcjkxNjg1NQ==","avatar_url":"https://avatars1.githubusercontent.com/u/916855?v=4","gravatar_id":"","url":"https://api.github.com/users/kodayashi","html_url":"https://github.com/kodayashi","followers_url":"https://api.github.com/users/kodayashi/followers","following_url":"https://api.github.com/users/kodayashi/following{/other_user}","gists_url":"https://api.github.com/users/kodayashi/gists{/gist_id}","starred_url":"https://api.github.com/users/kodayashi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kodayashi/subscriptions","organizations_url":"https://api.github.com/users/kodayashi/orgs","repos_url":"https://api.github.com/users/kodayashi/repos","events_url":"https://api.github.com/users/kodayashi/events{/privacy}","received_events_url":"https://api.github.com/users/kodayashi/received_events","type":"User","site_admin":false},"labels":[{"id":257497884,"node_id":"MDU6TGFiZWwyNTc0OTc4ODQ=","url":"https://api.github.com/repos/facebook/react-native/labels/:large_blue_diamond:iOS","name":":large_blue_diamond:iOS","color":"bfd4f2","default":false},{"id":846765400,"node_id":"MDU6TGFiZWw4NDY3NjU0MDA=","url":"https://api.github.com/repos/facebook/react-native/labels/:rewind:Old%20Version","name":":rewind:Old Version","color":"d4c5f9","default":false},{"id":337217254,"node_id":"MDU6TGFiZWwzMzcyMTcyNTQ=","url":"https://api.github.com/repos/facebook/react-native/labels/Ran%20Commands","name":"Ran Commands","color":"ffffff","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2018-03-18T20:07:56Z","updated_at":"2018-07-17T19:00:00Z","closed_at":"2018-07-17T19:00:00Z","author_association":"NONE","body":"<!--\r\n  We use GitHub Issues exclusively for tracking bugs in React Native.\r\n  Questions? Visit http://facebook.github.io/react-native/help.html\r\n  If this issue is about documentation or the website, please file it at:\r\n  https://github.com/facebook/react-native-website/issues/new\r\n-->\r\n\r\n- [X] I have reviewed the [documentation](https://facebook.github.io/react-native)\r\n- [X] I have searched [existing issues](https://github.com/facebook/react-native/issues)\r\n- [X] I am using the [latest React Native version](https://github.com/facebook/react-native/releases)\r\n\r\n<!-- Describe your issue in detail. -->\r\n\r\nPickerIOS supports onValueChange. This fires after the iOS picker stops rotating and settles on an index. There are cases where the picker can be *almost* done rotating, but onValueChange hasn't fired yet. The easing into a new value is slow enough to where a user can click \"Done\" for a button that takes the selectedValue from PickerIOS and stores it (somewhere), yet the wheel is still rotating. This causes cases where the user expects selectedValue+1 to be set, but selectedValue is instead set.\r\n\r\nIdeally, we could hook into this animation and listen for an event that tells us the iOS picker has started \"rotating\" and stopped \"rotating\". Then, we could wait for animations to complete (and thus the correct selectedValue) when saving PickerIOS's state. Currently this is not possible.\r\n\r\n## Environment\r\n<!-- Required. Run `react-native info` in your terminal and paste its contents here. -->\r\n\r\nEnvironment:\r\n  OS: macOS High Sierra 10.13.3\r\n  Node: 9.5.0\r\n  Yarn: 1.3.2\r\n  npm: 5.6.0\r\n  Watchman: 4.9.0\r\n  Xcode: Xcode 9.2 Build version 9C40b\r\n  Android Studio: 3.0 AI-171.4443003\r\n\r\nPackages: (wanted => installed)\r\n  react: 16.2.0 => 16.2.0\r\n  react-native: 0.53.3 => 0.53.3\r\n\r\n## Steps to Reproduce\r\n<!-- \r\n  Required. Let us know how to reproduce the issue. Include a code sample, share a project, \r\n  or share an app that reproduces the issue using [Snack](https://snack.expo.io/).\r\n-->\r\n\r\nTry binding a selectedValue to PickerIOS, spin the wheel and click on a button that saves selectedValue just before the wheel stops rotating. You will not get the proper value (or you will get no value if selectedValue was initially undefined)\r\n\r\n## Expected Behavior\r\n<!-- Write what you thought would happen. -->\r\n\r\nTo prevent the above, listening to animation events could be used to wait for animations to complete to ensure we get the proper selectedValue. You could even disable such a button until animation is complete to help guide a user to set the right value.\r\n\r\n## Actual Behavior\r\n<!-- Write what happened. Include screenshots if needed. If this is a regression, let us know. -->\r\n"}}
{"actor":{"display_login":"react-native-bot"}}