Merge pull request #84 from elbstack/master

Fixes #81
This commit is contained in:
leecade
2016-01-22 18:24:40 +08:00
3 changed files with 23 additions and 0 deletions

3
.gitignore vendored
View File

@@ -32,3 +32,6 @@ build/Release
*.xcuserstate
examples/swiper.xcodeproj/project.xcworkspace/
examples/swiper.xcodeproj/xcuserdata
# IntelliJ
.idea/

10
dist/index.js vendored
View File

@@ -250,6 +250,15 @@ module.exports = _reactNative2.default.createClass({
isScrolling: false
});
// making our events coming from android compatible to updateIndex logic
if (!e.nativeEvent.contentOffset) {
if (this.state.dir == 'x') {
e.nativeEvent.contentOffset = { x: e.nativeEvent.position * this.state.width };
} else {
e.nativeEvent.contentOffset = { y: e.nativeEvent.position * this.state.height };
}
}
this.updateIndex(e.nativeEvent.contentOffset, this.state.dir);
// Note: `this.setState` is async, so I call the `onMomentumScrollEnd`
@@ -439,6 +448,7 @@ module.exports = _reactNative2.default.createClass({
return _reactNative2.default.createElement(
_reactNative.ViewPagerAndroid,
{ ref: 'scrollView',
onPageSelected: this.onScrollEnd,
style: { flex: 1 } },
pages
);

View File

@@ -249,6 +249,15 @@ module.exports = React.createClass({
isScrolling: false
})
// making our events coming from android compatible to updateIndex logic
if (!e.nativeEvent.contentOffset) {
if (this.state.dir == 'x') {
e.nativeEvent.contentOffset = {x: e.nativeEvent.position * this.state.width}
} else {
e.nativeEvent.contentOffset = {y: e.nativeEvent.position * this.state.height}
}
}
this.updateIndex(e.nativeEvent.contentOffset, this.state.dir)
// Note: `this.setState` is async, so I call the `onMomentumScrollEnd`
@@ -430,6 +439,7 @@ module.exports = React.createClass({
);
return (
<ViewPagerAndroid ref="scrollView"
onPageSelected={this.onScrollEnd}
style={{flex: 1}}>
{pages}
</ViewPagerAndroid>