Java 类com.facebook.react.views.scroll.ScrollEventType 实例源码
项目:react-native-recyclerview-list
文件:RecyclerViewBackedScrollView.java
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
if (super.onInterceptTouchEvent(ev)) {
NativeGestureUtil.notifyNativeGestureStarted(this, ev);
mDragging = true;
getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
ScrollEventType.BEGIN_DRAG,
0, /* offsetX = 0, horizontal scrolling only */
computeVerticalScrollOffset(),
0, // xVelocity
0, // yVelocity
getWidth(),
computeVerticalScrollRange(),
getWidth(),
getHeight()));
return true;
}
return false;
}
项目:react-native-recyclerview-list
文件:RecyclerViewBackedScrollView.java
@Override
public boolean onTouchEvent(MotionEvent ev) {
int action = ev.getAction() & MotionEvent.ACTION_MASK;
if (action == MotionEvent.ACTION_UP && mDragging) {
mDragging = false;
mVelocityHelper.calculateVelocity(ev);
getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
ScrollEventType.END_DRAG,
0, /* offsetX = 0, horizontal scrolling only */
computeVerticalScrollOffset(),
mVelocityHelper.getXVelocity(),
mVelocityHelper.getYVelocity(),
getWidth(),
computeVerticalScrollRange(),
getWidth(),
getHeight()));
}
return super.onTouchEvent(ev);
}
项目:RNLearn_Project1
文件:ReactTextInputManager.java
@Override
public void onScrollChanged(int horiz, int vert, int oldHoriz, int oldVert) {
if (mPreviousHoriz != horiz || mPreviousVert != vert) {
ScrollEvent event = ScrollEvent.obtain(
mReactEditText.getId(),
ScrollEventType.SCROLL,
horiz,
vert,
0, // can't get content width
0, // can't get content height
mReactEditText.getWidth(),
mReactEditText.getHeight()
);
mEventDispatcher.dispatchEvent(event);
mPreviousHoriz = horiz;
mPreviousVert = vert;
}
}
项目:RNLearn_Project1
文件:ReactTextInputManager.java
@Override
public void onScrollChanged(int horiz, int vert, int oldHoriz, int oldVert) {
if (mPreviousHoriz != horiz || mPreviousVert != vert) {
ScrollEvent event = ScrollEvent.obtain(
mReactEditText.getId(),
ScrollEventType.SCROLL,
horiz,
vert,
0, // can't get content width
0, // can't get content height
mReactEditText.getWidth(),
mReactEditText.getHeight()
);
mEventDispatcher.dispatchEvent(event);
mPreviousHoriz = horiz;
mPreviousVert = vert;
}
}
项目:ReactNativeSignatureExample
文件:RecyclerViewBackedScrollView.java
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
((ReactContext) getContext()).getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
SystemClock.nanoTime(),
ScrollEventType.SCROLL,
0, /* offsetX = 0, horizontal scrolling only */
calculateAbsoluteOffset(),
getWidth(),
((ReactListAdapter) getAdapter()).getTotalChildrenHeight(),
getWidth(),
getHeight()));
}
项目:react-native-ibeacon-android
文件:RecyclerViewBackedScrollView.java
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
((ReactContext) getContext()).getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
SystemClock.nanoTime(),
ScrollEventType.SCROLL,
0, /* offsetX = 0, horizontal scrolling only */
calculateAbsoluteOffset(),
getWidth(),
((ReactListAdapter) getAdapter()).getTotalChildrenHeight(),
getWidth(),
getHeight()));
}
项目:react-native-box-loaders
文件:RecyclerViewBackedScrollView.java
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
((ReactContext) getContext()).getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
SystemClock.nanoTime(),
ScrollEventType.SCROLL,
0, /* offsetX = 0, horizontal scrolling only */
calculateAbsoluteOffset(),
getWidth(),
((ReactListAdapter) getAdapter()).getTotalChildrenHeight(),
getWidth(),
getHeight()));
}
项目:react-native-recyclerview-list
文件:RecyclerViewBackedScrollViewManager.java
@Override
public
@Nullable
Map getExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.put(ContentSizeChangeEvent.EVENT_NAME, MapBuilder.of("registrationName", "onContentSizeChange"))
.put(VisibleItemsChangeEvent.EVENT_NAME, MapBuilder.of("registrationName", "onVisibleItemsChange"))
.build();
}
项目:react-native-recyclerview-list
文件:RecyclerViewBackedScrollView.java
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
if (mOnScrollDispatchHelper.onScrollChanged(l, t)) {
getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
ScrollEventType.SCROLL,
0, /* offsetX = 0, horizontal scrolling only */
computeVerticalScrollOffset(),
mOnScrollDispatchHelper.getXFlingVelocity(),
mOnScrollDispatchHelper.getYFlingVelocity(),
getWidth(),
computeVerticalScrollRange(),
getWidth(),
getHeight()));
}
final int firstIndex = ((LinearLayoutManager) getLayoutManager()).findFirstVisibleItemPosition();
final int lastIndex = ((LinearLayoutManager) getLayoutManager()).findLastVisibleItemPosition();
if (firstIndex != mFirstVisibleIndex || lastIndex != mLastVisibleIndex) {
getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(new VisibleItemsChangeEvent(
getId(),
SystemClock.nanoTime(),
firstIndex,
lastIndex));
mFirstVisibleIndex = firstIndex;
mLastVisibleIndex = lastIndex;
}
}
项目:react-native-directed-scrollview
文件:DirectedScrollViewManager.java
public static Map createExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.put(ScrollEventType.BEGIN_DRAG.getJSEventName(), MapBuilder.of("registrationName", "onScrollBeginDrag"))
.put(ScrollEventType.END_DRAG.getJSEventName(), MapBuilder.of("registrationName", "onScrollEndDrag"))
.put(ScrollEventType.MOMENTUM_BEGIN.getJSEventName(), MapBuilder.of("registrationName", "onMomentumScrollBegin"))
.put(ScrollEventType.MOMENTUM_END.getJSEventName(), MapBuilder.of("registrationName", "onMomentumScrollEnd"))
.build();
}
项目:ReactNativeSignatureExample
文件:RecyclerViewBackedScrollViewManager.java
@Override
public @Nullable
Map getExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.put(
ContentSizeChangeEvent.EVENT_NAME,
MapBuilder.of("registrationName", "onContentSizeChange"))
.build();
}
项目:react-native-ibeacon-android
文件:RecyclerViewBackedScrollViewManager.java
@Override
public @Nullable
Map getExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.put(
ContentSizeChangeEvent.EVENT_NAME,
MapBuilder.of("registrationName", "onContentSizeChange"))
.build();
}
项目:react-native-box-loaders
文件:RecyclerViewBackedScrollViewManager.java
@Override
public @Nullable
Map getExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.put(
ContentSizeChangeEvent.EVENT_NAME,
MapBuilder.of("registrationName", "onContentSizeChange"))
.build();
}
项目:Ironman
文件:RecyclerViewBackedScrollViewManager.java
@Override
public @Nullable
Map getExportedCustomDirectEventTypeConstants() {
return MapBuilder.builder()
.put(ScrollEventType.SCROLL.getJSEventName(), MapBuilder.of("registrationName", "onScroll"))
.build();
}
项目:Ironman
文件:RecyclerViewBackedScrollView.java
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
((ReactContext) getContext()).getNativeModule(UIManagerModule.class).getEventDispatcher()
.dispatchEvent(ScrollEvent.obtain(
getId(),
ScrollEventType.SCROLL,
0, /* offsetX = 0, horizontal scrolling only */
calculateAbsoluteOffset(),
getWidth(),
((ReactListAdapter) getAdapter()).getTotalChildrenHeight(),
getWidth(),
getHeight()));
}